0
点赞
收藏
分享

微信扫一扫

C++全排列算法(STL)

爱薇Ivy趣闻 2022-04-22 阅读 55
算法

文章目录


STL提供了两个用来计算排列组合关系的算法,分别是next_permutation和prev_permutation。

1.next_permutation

//获得之后的字典序
#include<iostream>
#include<algorithm>
using namespace std;
int a[3]={1,2,3};
int main ()
{
    do
    {
        cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl;
    }while(next_permutation(a,a+3));
}
//执行结果
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

2.prev_permutation

//获得之前的字典序
#include<iostream>
#include<algorithm>
using namespace std;
int a[3]={3,2,1};
int main ()
{
    do
    {
        cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl;
    }while(prev_permutation(a,a+3));
}
//执行结果:
3 2 1
3 1 2
2 3 1
2 1 3
1 3 2
1 2 3
举报

相关推荐

0 条评论