gpt4 book ai didi

algorithm - 寻找一种通用的、快速的、低内存的算法来输出数组的 N-out-of-M 组合而不重复

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:35:21 25 4
gpt4 key购买 nike

我有一个玩家数组

$players = array('A','B','C','D','E','F');

我想完成所有可能的 3 种方式。

1st 2nd 3rd
A B C
A B D
...
C A B
C B A
...
F D E
F E D

我有一些排列算法,但它一定是别的东西,因为在排列中有 6 * 5 * 4 * 3 * 2 * 1 组合,这里只有 6 * 5 * 4

最佳答案

下面是一些伪代码,用于打印 6 种组合中的 3 种而不重复:

for i = 1 to 6
for j = 1 to 6
if (j != i)
for k = 1 to 6
if (k != i && k != j)
print(A[i], A[j], A[k])
end if
next k
end if
next j
next i

对于一般的 k-of-n 情况,请参阅:Algorithm to return all combinations of k elements from n

关于algorithm - 寻找一种通用的、快速的、低内存的算法来输出数组的 N-out-of-M 组合而不重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11330550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com