- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在编写一个逻辑来根据以下条件获取迭代的组合。我有处理它的工作代码。我想知道我是否可以减少它的迭代次数
A,B,C,D,E,F,G 是下例中的节点集
标准:
获取元素列表。
1、里面不能有重复的节点。例如.. AB 可以在那里 BA 不应该在那里 2. 不应该有对角线元素 eg.. AA,BB...
完成逻辑后,我们得到所有彩色的(不是黑色/灰色的)AB,AC,AD,AE,AF,AG,BC,BD,BE,BF,BG,CD,CE,CF,CG,DE,DF,DG,EF,EG,FG
获取迭代中的元素组必须根据以下规则对元素进行分组以进行迭代
第一次迭代1. 选择一个元素。让我们说AB2. 将被拾取的元素不应该有 A 或 B 。因此可以选择CD。3. 完成上述 2 个步骤后,我们将获得第一次迭代的元素
在第一次迭代结束时,我们会收集 AB、CD、EF
在第 2 次迭代结束时,我们将收集 AC、BD、EG
像这样迭代次数将完成以获得每次迭代的元素。
问题:由于我预计元素将在 100 左右,我想知道是否有减少迭代次数的最佳方法。我希望不会有办法。但由于我们这里有算法专家,所以我需要这里的建议。
最佳答案
您可以使用 round-robin tournament algorithm
将项目放在两行中(如果数字是奇数,则空位),这里我为您的 AB/CD/EF 示例配对
A C E G
B D F .
pairs AB CD EF
固定第一个元素 (A) 并在每一步循环旋转其他项目(顺序与您的顺序不同)。最后你会得到 N-1
组 N/2
对
A B C E
D F G .
pairs AD BF CG
and so on
A D B C
F G E .
A F D B
G E C .
A G F D
E C B .
A E G F
C B D .
关于java - 以较少迭代次数获得组合的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56106497/
我正在使用Visual Studio 2012和Web Essential 2012,而Less生成的css与预期的不一样 //style.less .selector{ max-heig
我创建了一个基于LESS的小型混合器,用于以标准或视网膜格式输出图像。我无法理解将变量包装在与此相伴的一些CSS URL中-当我编译下面的代码时,我最终得到 url('http://sample.co
有人可以帮助我使用 CSS(less)吗,因为我似乎还不能理解它是如何工作的,我已经通过 node.js 安装了它,但现在如何将它链接到我的代码/网页? 由于某种原因,选择框没有输出到网页上,因为很可
我知道大多数算术运算只能使用按位运算符( Add two integers using only bitwise operators? 、 Multiplication of two integers
我需要在 less 中选择一个类的第 n 个子元素,而不是计算特定类的元素。例如,给定: 李 li class="skip_this" 李 李 李 我想让第 n 个 child 在计数时跳过 skip
当我单击一个按钮时,我进行了一个 ajax 调用,该调用将不同的 html 代码加载到一个 ID 为“main”的 div 中。我可以毫无问题地显示 html 代码,但我找不到将 css 和 js 代
我正在使用非常有限的 Shell 开发嵌入式 Linux。内置命令非常少。 我想检查 gpio 端口。这适用于以下内容。但它需要很多 CPU/IO - 电源!!所以我想像 sleep 一样得到短暂的休
我是一名优秀的程序员,十分优秀!