1.next_permutation()的函数原型
template <class BidirectionalIterator>
bool next_permutation (BidirectionalIterator first, BidirectionalIterator last );
2.使用方法
下一个排列组合存在时,将对序列从first到last-1进行重新排列组合为字典序下一个序列,并返回true;否则返回false;
使用例程:
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int arr[3]={1,2,3};
do
{
cout<<arr[0]<<" "<<arr[1]<<" "<<arr[2]<<endl;
}while(next_permutation(arr,arr+3));
return 0;
}
程序运行结果如下:
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1