next_premutation

来源:互联网 发布:淘宝3000多的实体娃娃 编辑:程序博客网 时间:2024/05/17 17:38

全排列函数,重新排列范围内的元素[第一,最后一个)使其转换为按照字典序排列的下一个值较大的组合,若存在下个较大的组合返回true,否则返回false。


#include<cstdio>#include<algorithm>using namespace std;int main(){int a[10];a[0]=1,a[1]=2,a[2]=3;while( next_permutation(a,a+3) ){for(int i=0;i<3;i++){printf("%d ",a[i]);}printf("\n");}return 0;} 

结果

1 3 2
2 1 3
2 3 1
3 1 2
3 2 1


同理,prev_premutation()提供降序排列

0 0