next_permutation
转载出处:传送门
(有删改)
next_permutation的函数声明:#include <algorithm>
bool next_permutation( iterator start, iterator end);
next_permutation函数的返回值是布尔类型
在STL中还有perv_permutation()函数
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
string str;
cin >> str;
sort(str.begin(),str.end());
cout<< str <<endl;//可以注释此行看看结果
while (next_permutation(str.begin(), str.end()))
cout << str << endl;
return 0;
}
上述代码输入:123
运行结果:
next_permutation()函数功能是输出所有比当前排列大的排列,顺序是从小到大。
而prev_permutation()函数功能是输出所有比当前排列小的排列,顺序是从大到小。