【发布时间】:2013-05-27 09:24:19
【问题描述】:
我正在尝试制作一个简单的排列程序,它从输入的数字返回给我其他数字的所有排列。
如果我有:
{0,1,2,3,4,5,6,7}
我输入数字 3,我希望得到除给定数字之外的每个数字的所有排列。我不关心列表的顺序,我只关心第一个数字是输入的数字。
{3,0,1,2,4,5,6,7}
{3,1,2,4,5,6,7,0}
{3,2,4,5,6,7,0,1}
... etc
我试过this solution,它给出了所有排列,但它从 1 开始,当我完成显示“所需的第一个数字”的排列时我不知道如何停止它,因为我不在乎其余的那些。为我正在做的另一件事处理带有索引的输出也很棒。有任何想法吗?谢谢。
【问题讨论】:
-
一个不太优雅的解决方案是从数组中删除数字,显示所有其他数字的排列并将该数字添加到所有这些解决方案中。
标签: c permutation