问题标签 [set-operations]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 对 XML 执行类似集合的操作
C#/.NET 中是否有一种机制可以以一般方式对复杂的 XML 结构执行类似集合的操作?
例如,假设我有以下 XML 结构 A:
第二个 XML 结构 B:
我希望能够执行联合、交叉或差异等操作。例如,我期望 A - B 得到以下结果:
.NET 框架或 3rd 方库中是否已经有这样的机制,或者我必须从头开始实现它?
sql - SQL 集合运算符 - 从具有不同列的表中选择行
我正在使用 Oracle 10g,并且正在尝试使用集合运算符从一个表中选择未出现在查询中的另一个表中的行。
我正在尝试从表中选择这些行未出现在表中的表中的id
,last_name
和first_name
列。employee
job_history
这两个表中唯一的共同列是id
列。但我也想显示名称。
我努力了:
这不会产生预期的结果。
但是,如果我不想显示员工表中的名称,我使用:
这给了我一半的结果,除了我想要员工表中的名字。
有什么建议吗?
algorithm - 用于快速交叉路口操作的数据结构?
随机选择两个集合,两个集合都包含不同的键(一个键可能属于多个集合,一个集合永远不能包含重复的键)。
返回一个整数,表示属于两个集合的键数。
例如 intersect({1,2,3,4},{3,4,5}) 返回 2 。
我只需要十字路口的大小。我不需要确切知道十字路口有哪些钥匙。
是否有任何数据结构在少于 O(n) 的时间内支持这种操作?
编辑:
读取数据确实需要 O(n) time,但这不会导致您不能在少于 O(n) time 的时间内执行交集操作的结论。
想象这个场景:
我有 N 套,每套包含 100 个钥匙。我读了它们,那是 N*100 操作。现在我想知道女巫对集合有最大的交集,即 O(N²) 交集操作。所以我想降低交集操作的复杂性。我真的不知道关心读取和构造集合需要多少时间,最多 N*100,这与 O(N²) 交集操作相比没什么。
请注意,您无法通过小于 O(N²) 的交集运算找到具有最大交集的集合对,我可以证明这一点。您必须执行所有的交集运算。
(他的基本思想是,让我们想象一个完整的图,有 N 个顶点,每个顶点代表一个集合,Nx(N-1)/2 个边,每个代表连接对的交点。现在给每个边一个非你想要的所有负重(代表交叉点大小),我总是可以构造 N 个集合满足那些 Nx(N-1)/2 边权重。这证明了我的主张。)
sql - SQL:使用 SET 运算符获取计数结果
我正在尝试使用 SQL Developer 中的 SET 运算符获取计数结果。
我必须找出“table_name1”中有多少“attribute1”但不在“table_name2”中
本质上,我想要从以下查询中获得的结果,但使用 SET 运算符。
谁能帮帮我吗?
c++ - 使用位串设置减法
一个学校项目要求我使用自己的位串实现来执行基本的集合操作(禁止使用 STL)。我设置了一个非常基本但功能强大的位向量包装器,它与所有可以由原生 C 位运算符(位与、或、异或)等计算的集合操作完美配合。
但是,设置减法是一项必需的操作,我不知道如何使用位串操作进行计算。设置减法含义(A - B) = 所有在 A 中但不在 B 中的值
这是我的实现和两个基本操作:
我可以确认这对于所有具有按位运算符的操作完全符合预期。我只是不知道如何以类似的方式实现Set Subtraction 。
r - R中相交和匹配之间的区别
我试图了解Rmatch
和intersect
R 之间的区别。两者都以不同的格式返回相同的输出。两者之间有任何功能差异吗?
sql - 如何为 SQL Server 中的多个优先级条件连接编写优化查询?
我追求的场景是:
假设我有以下三个表。
IdName表 1,优先级 1
1 John
2 Mary
3 Elsa
IdName表 2,优先级 2
2 Steve
3 Max
4 Peter
IdName表 3,优先级 3
4 Frank
5 Harry
6 Mona
这是我需要的最终结果。
IdName结果
1 John
2 Mary
3 Elsa
4 Peter
5 Harry
6 Mona
一些提示要记住。
实际表数为 10。
每个表的行数超过 100 万。
没有必要在查询中使用连接,但由于我正在处理查询的数据量必须优化并在 SQL 中使用集合操作而不是游标脚本。
c# - 减少集合操作中的循环?
我可以使用更好的 LINQ 或 lambda 表达式来减少此 C# 代码中的循环吗?我本质上是在寻找一个 UNION 操作来删除重复项并标记两组中的项目。
r - 对于两组坐标,提取 Set A 减去 Set B 的唯一行
我有两组坐标:
- 用 49,898 个 x 和 y 组合设置 A
- 用 36,404 个 x 和 y 组合设置 B。
- (A 组包含 B 组中的所有组合加上额外的 13,494 种组合)
- Excel 或 R 中的解决方案都可以
我想提取这组独特的 13,494 个组合。为了尝试使用 Excel 或 R 提取这些唯一值,我已将 Set B 的 x & y 坐标组合复制到与 Set A 相同的列中。
表格布局是两列Xcod, Ycod
:x 和 y 示例
我已经阅读了许多建议使用 excel & R 的帖子,它们部分解决了这个问题,除了输出总是 49,898 个组合,因为它们保持了“原始”重复值集。我理解为什么会这样,但我想要完全删除这些重复项,以便我有一个包含 Set A 独特的 13,494 个组合的最终输出。
[Excel] 我使用了以下内容:Data -> Advanced Filter -> Unique records only
[R] 我使用了这个线程中的以下代码:
任何帮助/建议将不胜感激。
r - 对字符数据(整数字符串)设置操作
有谁知道如何设计一种快速计算两列相对重叠的方法?我想知道集合'b'中有多少'a'元素。理想情况下,会生成一列“c”来存储每行的这些比较值。真的卡在这个了。。
此函数适用于第 18 行,但不易使用 sapply 或等效函数进行扩展。