标签: combinations

从n返回k个元素的所有组合的算法

我想写一个函数,它将一个字母数组作为参数,并选择一些字母.

假设您提供了8个字母的数组,并希望从中选择3个字母.然后你应该得到:

8! / ((8 - 3)! * 3!) = 56
Run Code Online (Sandbox Code Playgroud)

数组(或单词)返回,每个包含3个字母.

algorithm combinations

551
推荐指数
23
解决办法
43万
查看次数

如何获得列表元素的所有可能组合?

我有一个包含15个数字的列表,我需要编写一些代码来生成这些数字的所有32,768种组合.

我发现了一些代码(通过谷歌搜索)显然正在寻找我正在寻找的东西,但我发现代码相当不透明并且对使用它很谨慎.另外我觉得必须有一个更优雅的解决方案.

我发生的唯一事情就是循环遍历十进制整数1-32768并将它们转换为二进制,并使用二进制表示作为过滤器来选择适当的数字.

有谁知道更好的方法?使用map(),也许?

python combinations

374
推荐指数
17
解决办法
56万
查看次数

列表列表的所有组合

我基本上正在寻找一个python版本的组合List<List<int>>

给定一个列表列表,我需要一个新列表,它列出了列表之间所有可能的项目组合.

[[1,2,3],[4,5,6],[7,8,9,10]] -> [[1,4,7],[1,4,8],...,[3,6,10]]
Run Code Online (Sandbox Code Playgroud)

列表的数量是未知的,所以我需要一些适用于所有情况的东西.优点加分!

python combinations

210
推荐指数
6
解决办法
10万
查看次数

找到所有可能的数字组合以达到给定的总和

您将如何测试一组给定数字的所有可能的添加组合,以便它们加起来给定的最终数字?

例:

  • 要添加的数字集:{1,5,22,15,0,...}
  • 期望的结果:12345

language-agnostic algorithm search combinations subset-sum

207
推荐指数
10
解决办法
33万
查看次数

两个名单之间的组合?

已经有一段时间了,我无法绕过我想要制作的算法.基本上,我有两个列表,并希望获得两个列表的所有组合.

我可能不会解释它是正确的,所以这是一个例子.

name = 'a', 'b'
number = 1, 2
Run Code Online (Sandbox Code Playgroud)

在这种情况下的输出将是:

1.  A1 B2
2.  B1 A2
Run Code Online (Sandbox Code Playgroud)

棘手的部分是"name"变量中的项目可能比"number"变量中的项目更多(数字将始终等于或小于name变量).

我很困惑如何进行所有组合(嵌套for循环?),如果名称中的项目多于它们在数字列表中的项目,则更加混淆逻辑以移动名称变量中的项目.

我不是最好的程序员但是如果有人可以帮助我澄清逻辑/算法来实现这一点,我想我可以试一试.所以我刚刚陷入嵌套for循环.

更新:

这是3个变量和2个数字的输出:

name = 'a', 'b', 'c'
number = 1, 2
Run Code Online (Sandbox Code Playgroud)

输出:

1.  A1 B2
2.  B1 A2
3.  A1 C2
4.  C1 A2
5.  B1 C2
6.  C1 B2
Run Code Online (Sandbox Code Playgroud)

python algorithm combinations list

158
推荐指数
11
解决办法
14万
查看次数

如何在PHP中将两个字符串组合在一起?

我实际上不知道如何描述我想要的东西,但我会告诉你:

例如:

$data1 = "the color is";
$data2 = "red";
Run Code Online (Sandbox Code Playgroud)

我应该做什么(或处理)所以$ result是$data1$data2?的组合?

期望的结果:

$result = "the color is red";
Run Code Online (Sandbox Code Playgroud)

php string variables combinations

127
推荐指数
9
解决办法
46万
查看次数

统计:Python中的组合

我需要计算在Python combinatorials(NCR),但无法找到的功能做在math,numpystat 图书馆.类似于类型函数的东西:

comb = calculate_combinations(n, r)
Run Code Online (Sandbox Code Playgroud)

我需要可能的组合数量,而不是实际的组合,所以itertools.combinations我不感兴趣.

最后,我想避免使用阶乘,因为我将计算组合的数字可能变得太大而且阶乘将变得非常可怕.

这似乎是一个非常容易回答的问题,但是我被淹没在关于生成所有实际组合的问题中,这不是我想要的.:)

非常感谢

python statistics combinations

114
推荐指数
11
解决办法
10万
查看次数

更快替代嵌套循环?

我需要创建一个数字组合列表.数字很​​小所以我可以使用byte而不是int.但是,它需要许多嵌套循环才能获得所有可能的组合.我想知道是否有更有效的方式来做我想要的事情.到目前为止的代码是:

var data = new List<byte[]>();
for (byte a = 0; a < 2; a++)
for (byte b = 0; b < 3; b++)
for (byte c = 0; c < 4; c++)
for (byte d = 0; d < 3; d++)
for (byte e = 0; e < 4; e++)
for (byte f = 0; f < 3; f++)
for (byte g = 0; g < 3; g++)
for (byte h = 0; h < …
Run Code Online (Sandbox Code Playgroud)

c# combinations

85
推荐指数
7
解决办法
1万
查看次数

Ruby中两个数组的组合

Ruby的实现方式是什么?

a = [1,2]
b = [3,4]
Run Code Online (Sandbox Code Playgroud)

我想要一个数组:

=> [f(1,3) ,f(1,4) , f(2,3) ,f(2,4)]
Run Code Online (Sandbox Code Playgroud)

ruby combinations

75
推荐指数
3
解决办法
2万
查看次数

在javascript中捕获ctrl + z组合键

我试图用这段代码在javascript中捕获ctrl+ z组合键:

<html>
<head>
    <title>Untitled Document</title>
</head>
<body>

    <script type='text/javascript'>
        function KeyPress(e) {
            var evtobj = window.event? event : e


            //test1 if (evtobj.ctrlKey) alert("Ctrl");
            //test2 if (evtobj.keyCode == 122) alert("z");
            //test 1 & 2
            if (evtobj.keyCode == 122 && evtobj.ctrlKey) alert("Ctrl+z");
        }

        document.onkeypress = KeyPress;
    </script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

如果我按住ctrl键并按任何其他键,注释行"test1"将生成警报.

如果我按下z键,注释行"test2"会生成警报.

在"测试1和2"之后按照线路将它们放在一起,按住ctrl键然后按下z键不会按预期生成警报.

代码有什么问题?

javascript combinations ctrl

65
推荐指数
4
解决办法
7万
查看次数