您的位置:首页 > 编程语言 > C语言/C++

C++ STL, next_permutation用法。

2016-04-07 21:20 190 查看
next_permutation 将按字母表顺序生成给定序列的下一个较大的序列,直到整个序列为

#include"iostream"
#include"algorithm"
using namespace std;
int main(){
int n,p[10];
cin>>n;
for(int i=0;i<n;i++){
cin>>p[i];
}
sort(p,p+n);
do{
for(int i=0;i<n;i++)
cout<<p[i]<<" ";
cout<<endl;
}while(next_permutation(p,p+n));
return 0;
}


减序为止。

prev_permutation函数与之相反,是生成给定序列的上一个较小的序列。

二者原理相同,仅遍例顺序相反.

string的nextl;

#include<iostream>
#include<string>
#include<algorithm>
using namespace std;

int main() {
string s1;
while (cin >>s1&&s1!="#") {
if (next_permutation(s1.begin(),s1.end()))
cout <<s1<< endl;
else
cout <<"No Successor"<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: