问题标签 [set]

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.

0 投票
5 回答
10214 浏览

java - Java:有没有一种简单、快速的方法来对集合进行 AND、OR 或 XOR?

也就是说,如果我有两个或更多集合,并且我想返回一个新集合,其中包含:

  1. 每组的所有元素都具有共同点 (AND)。
  2. 每组 (OR) 的所有元素总数。
  3. 每组独有的所有元素。(异或)。

有没有一种简单的、预先存在的方法来做到这一点?

编辑: 这是错误的术语,不是吗?

0 投票
3 回答
8995 浏览

java - 克隆和减去集合 - 这有效吗?

请注意,我不想AllDataObjects通过此过程进行更改。我将一组AllDataObjects' 键(这是DataObject我希望set从中减去参数的 s)转换为 HashSet 以使用克隆,它应该返回一个浅拷贝,然后我可以从中删除set而不影响AllDataObjects.

你觉得这合适吗?

0 投票
3 回答
147 浏览

language-agnostic - 包含常数集的测试

问题陈述:

给定一组预先知道的整数,生成代码来测试集合中是否有单个整数。测试函数的域是某个连续范围内的整数。


现在对要测试的范围或集合一无所知。范围可以很小也可以很大(但解决方案可以拒绝很大的问题,但更高的限制更好)。可能是允许范围内的值很少在集合中,或者它们中的大多数在集合中,或者介于两者之间。该集合可以是均匀分布的或聚集的。可能有大部分只包含/不包含的值,或者在大多数条带中每种类型的值可能至少有几个。(有点像在分析排序算法时对要排序的项目所做的假设)

目标是生成用于运行测试的有效代码的过程。

想到的部分解决方案包括

  • 完美的散列函数(大集合成本高)
  • 范围测试:foreach(b in ranges) if(b.l <= v && v <= b.h) return true;
  • 树/索引(在某些情况下比其他更昂贵)
  • 表查找(大集合成本高)
  • 这些中的任何一个的倒数(杰森 S的科多斯)

似乎一个理想的解决方案能够选择最好的选项,或者如果没有一个效果很好,使用树将整个范围分解为部分,然后切换到更适合它们的其他子部分选项。

可能有用的主题包括:


注意:这不是家庭作业。如果它是作为低于博士水平的家庭作业发布的,教授应该用 Nerf 枪射击(如果你没有得到那个然后重新阅读问题,这非常重要)

注意:这是我几天前遇到的一个问题,我一直在困惑。我对此没有直接用途,但认为这将是一个很酷的攻击问题。我想要生成代码的原因是因为生成的代码不会比一般代码慢(如果需要,它可以是同一件事)并且在某些/许多情况下可能会更快。

我发布这个问题是为了澄清我的想法。如果我能想出任何合理或酷的解决方案,我计划将它们实现为模板元程序(生成代码的另一个原因)

有些人注意到这个问题非常普遍。这就是我想说的。我希望生成一个可以在一个非常普遍的领域工作的系统:某个范围内的整数集。

0 投票
14 回答
53632 浏览

arrays - 在 Ruby 中将数组转换为索引哈希

我有一个数组,我想做一个散列,这样我就可以快速询问“数组中有 X 吗?”。

在 perl 中,有一种简单(快速)的方法可以做到这一点:

这会生成一个看起来像这样的哈希:

我在 Ruby 中想出的最好的方法是:

这使:

有更好的 Ruby 方法吗?

编辑 1

不,Array.include?这不是一个好主意。它的。它在 O(n) 而不是 O(1) 中进行查询。为简洁起见,我的示例数组包含三个元素;假设实际有一百万个元素。让我们做一些基准测试:

产生:

0 投票
2 回答
2388 浏览

java - Spring context.xml 和 Set.contains()

Spring:在我的 context.xml 中,我有:

在我的 Java bean 中,实现是:

avobe代码块执行后,发现是很诡异的假!怎么会?有什么建议/想法吗?谢谢一堆。

0 投票
6 回答
5747 浏览

java - 我可以使用 java.util.Set 在 Java 中为 DFA 实现状态转换吗

我正在实施一个尽可能接近正式定义的 DFA 作为学习练习(和博客材料)

我计划使用一个 java.util.Set ,其中定义中涉及一个集合。

该定义涉及一组元组来定义合法的状态转换:(state,symbol) -> nextState。

我有一个带有成员 state、symbol 和 nextState 的 Transition 类。我已经实现了 equals() 和 hashCode() 来指示如果两个转换在状态和符号上匹配,则它们是相等的。然后我有一个 java.util.Set 的 Transition 实例。

在我的处理算法中,当我读取下一个符号时,我拥有当前状态。我预计使用这两个构建一个 Transition 对象,从 Set 中提取匹配的 Transition,然后它会告诉我下一个状态,我可以迭代。

但是 - 我看不到任何提取 java.util.Set 成员以供进一步使用的方法。我可以删除(对象 o),但这只是返回布尔值。

我究竟做错了什么?

0 投票
3 回答
4263 浏览

string - 如何在 Pascal 中使用字符串集?

我正在编写一个小游戏,在其中询问用户的种族和班级。string[5] 有五种可能的种族和 string[9] 的四种可能类别。

我如何将 pascal 编程为 1. 将五个种族和四个类定义为常量, 2. 检查用户输入以查看输入是否在可能的种族和类中 - 不使用多个 IF 语句?

任何提示将不胜感激。

0 投票
6 回答
18378 浏览

java - 何时在 Java 中使用 Enum 或 Collection

在什么情况下,枚举比保证唯一元素的 Collection 更合适(我猜是 java.util.Set 的实现者......)?

(这是我之前问题的一种跟进)

0 投票
4 回答
1584 浏览

php - Flash+PHP+cookie

我只想在浏览器中播放一次动画。如果任何用户看过电影并且如果转到任何其他页面或刷新(F5)然后返回动画页面,则动画不应从头开始播放。我想从另一个帧播放它。

我认为这可以通过使用 javascript 或 php 设置 cookie 或 somthing 来完成。

请任何人帮助我。提前致谢。我将不胜感激,如果一些代码帮助请

0 投票
6 回答
2381 浏览

c++ - 剥离物品的最佳 C++ 容器?

我有一个文件列表(存储为 c 样式字符串),我将对其执行搜索,我将删除那些与我的参数不匹配的文件。用于此目的的最佳容器是什么?我现在正在考虑设置。请注意,文件列表永远不会比初始化时大。我只会从容器中删除。