与数组 C++ 组合

Posted

技术标签:

【中文标题】与数组 C++ 组合【英文标题】:Making combinations with arrays C++ 【发布时间】:2012-11-20 11:49:47 【问题描述】:
char *combo [] = "node", "game", "loop", "good";

如何使用上面显示的数组组合 12 个字母的单词。组合示例:

节点游戏循环 循环好节点 游戏游戏游戏 looploopgame

“必须考虑所有组合。使用嵌套循环是必要的。”

【问题讨论】:

我尝试了一个有3个下标的多维数组,但没有成功。 @ChristianSeverin Homework Tag Is Deprecated @WhozCraig:哦,谢谢。对不起。 【参考方案1】:

您应该在发布之前尝试一些事情。 如果我没听错的话:

int i, j, k;
for (i = 0; i < 4; ++i)  
    for (j = 0; j < 4; ++j)
        for (k = 0; k < 4; ++k)
            printf("%s%s%s\n", combo[i], combo[j], combo[k]);

【讨论】:

【参考方案2】:

有 4^3 组合。 你可以像这样创建所有这些:

for (int i=0; i<4; i++)

   for (int k=0; k<4; k++)
   
      for (int y=0; y<4; y++)
      
            cout << combo[i] << combo[k] << combo[y] << endl;
           
   

【讨论】:

以上是关于与数组 C++ 组合的主要内容,如果未能解决你的问题,请参考以下文章

父子组合学C++:18.数组基础-数列反向

C++数组,指针,引用以及三者的复合类型

C++中怎样把两个升序数组合并

父子组合学C++信竞编程:26.简化桶排序基础-计数数组

遍历整数数组所有组合的算法

进度报告3