相关疑难解决方法(0)

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

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

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

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

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

algorithm combinations

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

迭代任何大小的子集

我可以遍历大小为1的子集

for( int a = 0; a < size; a++ ) {
Run Code Online (Sandbox Code Playgroud)

或者大小为2的子集

for( int a1 = 0; a1 < size; a1++ ) {
    for( int a2 = a1+1; a2 < size; a2++ ) {
Run Code Online (Sandbox Code Playgroud)

或3

for( int a1 = 0; a1 < size; a1++ ) {
for( int a2 = a1+1; a2 < size; a2++ ) {
   for( int a3 = a2+1; a3 < size; a3++ ) {
Run Code Online (Sandbox Code Playgroud)

但是如何对大小为n的子集执行此操作?

根据Adam Rosenfield的回答,这可以完成这项工作

void iterate(int *a, int i, int size, int …
Run Code Online (Sandbox Code Playgroud)

c++ algorithm

3
推荐指数
1
解决办法
2818
查看次数

标签 统计

algorithm ×2

c++ ×1

combinations ×1