全排列
next_permutation (默认)得到下一次排列的顺序
prev_permutation (默认)得到上一次排列的顺序
<函数包含在#include<algorithm>的头文件里
prev_permutation与next_permutation用法相同
一、对int类型数组排列(char,double型与int相同)
int num[100];
int cmp(int a ,int b)
{
return a < b; //若将 “>” 改为“<”则相当于prev_permutation
}
next_permutation(num,num+100,cmp);
next_permutation(d,d+100,cmp);
三、对string类型排列
string str;
int cmp(char a ,char b)
{
return a<b;
}
next_permutation(str.begin(),str.end(),cmp);
二、对结构体一级排列
struct In
{
int x,y;
}s[100];
int cmp(In a ,In b)
{
return a.x<b.x;
}
next_permutation(s,s+100,cmp);