枚举所有排列-STL中的next_permutation
Posted Tina
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了枚举所有排列-STL中的next_permutation相关的知识,希望对你有一定的参考价值。
枚举排列的常见方法有两种 一种是递归枚举 另一种是STL中的next_permutation
//枚举所有排列的另一种方法就是从字典序最小排列开始,不停的调用"求下一个排列"的过程 #include<cstdio> #include<algorithm> using namespace std; int main() { int n,p[10]; scanf("%d",&n); for(int i=0;i<n;i++) scanf("%d",&p[i]); sort(p,p+n);//得到最小排列 do{ for(int i=0;i<n;i++) printf("%d ",p[i]); printf("\\n"); } while(next_permutation(p,p+n)); return 0; }
以上是关于枚举所有排列-STL中的next_permutation的主要内容,如果未能解决你的问题,请参考以下文章