全排列 next_permutation 用法

给一个正整数n,让你求它的全排列

先介绍一个函数,iota(a,a+n,1)

用法就是把a数组的第0位到第n-1位依次赋为1,2,.....n;

然后是next_permutation(a,a+4)函数  求的书a数组0,1,2,3位组成的排列的下一个排列

在这个基础上代码便轻易出来了

#include <bits/stdc++.h>
using namespace std;



int main() {
    int n;
    cin>>n;
    int a[11];
    iota(a,a+n,1);
    do{
        for(int i=0;i<n;i++){
            cout<<a[i];
        }
        cout<<endl;
    }while(next_permutation(a,a+n));
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/qingjiuling/p/10513103.html