87得票5回答
SQL连接作为维恩图

我在理解SQL中的连接操作时遇到了一些问题,后来发现了这张图片,我想这可能会有所帮助。但问题是我并没有完全理解它。例如,图片右上角的连接,它将整个B圆圈染成红色,但只有与A重叠的部分也被染成红色。图片让人感觉B圆圈是SQL语句的主要焦点,但SQL语句本身却通过以A开始(从A选择,连接B)传达相...

31得票10回答
算法:确定从一个序列中删除一组值的所有可能方法

我正试图确定从序列中删除一组值的不同方式,使原始序列保持有序(稳定),并确保仅从原始序列中每个实例值中删除1个。例如,如果我有[1,2,1,3,1,4,4],并且我想删除[1,4,4],则我得到的组合将是: [1,2,1,3,1,4,4] \ [1,4,4] = [ [2,1,3,1], [...

25得票2回答
如何实现空集 - ∅?

假设您想在Java中实现集合论概念,例如element、set、collection和relation:那么您将如何表示 空集 ∅? 如果我认为数据库的三值逻辑中使用的NULL概念就是它本身,那么我会被误导吗?

23得票3回答
使用 LINQ 查找对称差集

我有两个集合a和b。 我想计算在a或b中,但不是同时在两者中的项的集合(逻辑异或)。 通过LINQ,我可以得到以下结果:IEnumerable<T> Delta<T>(IEnumerable<T> a, IEnumerable<T> b) { ...

17得票5回答
这个集合/数组操作有特定的名称吗?

考虑输入数组[a,b,c,d,e] 和一个 'join' 函数(a,b) => (a+b)我的代码返回以下数组,包含应用 join 函数到不同元素对的所有可能变化,同时保持顺序:[ [a,b,c,d,e], [a,b+c,d,e], [a,b+c+d,e], [a,b,c...

16得票5回答
通过交集和并集合并NSArrays

我有两个NSArray,A和B,它们共享一些公共元素,例如:A: 1,2,3,4,5 B: 4,5,6,7 我想创建一个新的NSArray,其中包含连接两个NSArrays的内容和第二个NSArray的内容之间的共同内容,同时保留元素的顺序并删除重复项。也就是说,我想要 (A ∩ B) ∪ ...

12得票5回答
如何实现一个无限集合类?

我正在设计一个离散数学的类库,但是我想不出如何实现无限集合。 目前,我有一个抽象的基类Set,它实现了接口ISet。对于有限集合,我派生了一个类FiniteSet,它实现了每个集合方法。然后我可以像这样使用它: FiniteSet<int> set1 = new FiniteS...

8得票5回答
可重复应用且产生相同结果的数据库操作?

我脑子一片空白,或者有些人会说是老年痴呆了。我知道有一个正式的定义和一个名称来描述这个概念,即数据库中运行的db操作(存储过程)如果重复运行,则会产生相同的结果。 这属于数学家反身性、对称性、传递性等类型的一种。

8得票4回答
Prolog列表差异例程

我正在尝试在Prolog中实现列表差异处理程序。 不知何故,以下内容会失败: difference(Xs,Ys,D) :- difference(Xs,Ys,[],D). difference([],_,A,D) :- D is A, !. difference([X|Xs],Ys,A,D)...

7得票1回答
Typescript:交叉类型 - 对命名感到困惑

我对Typescript中交叉类型的名称有些困惑。 在集合论中,交集意味着两种类型之间只有共同的属性才会在它们的交集中可用。 事实上,如果我在基本类型之间创建交集,Typescript就是这样行事的。 type A = string | number type B = number | ...