NAIVE_05

[文章目录]

1.神STL函数

还记得零基础学习递归的时候写的呕心沥血的全排列吗???
来吧,看一下这个函数 next_permutation(a+1,a+len+1);
返回一个bool,如果为真表示a数组交换两个元素可达字典序更大,并且将a数组调至字典序大于当前的最小的序列,如果为false,表示字典序已经最大,注意,如果有相同元素,交换的话不算两种全排列。
所以说全排列的代码???

for(int i=1;i<=len;i++) a[i]=i;
sort(a+1,a+len+1);
do
{
    for(int i=1;i<=len;++i) printf("%d ",a[i]);
    puts("");
}while(next_permutation(a+1,a+len+1));

发表评论

邮箱地址不会被公开。 必填项已用*标注