码迷,mamicode.com
首页 > 其他好文 > 详细

排列组合函数next_permutation()

时间:2016-09-07 13:02:34      阅读:394      评论:0      收藏:0      [点我收藏+]

标签:

next_permution(),按照字典序进行排列组合,

括号里的参数为类似sort里面的参数,用法相同

#include <bits/stdc++.h>
using namespace std;
#define Maxn 10

int main(){
    int a[3];
    a[0]=1;a[1]=2;a[2]=3;
    do{
        cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl;
    }while (next_permutation(a,a+3)); //参数3指的是要进行排列的长度
}
//如果存在a之后的排列,就返回true。如果a是最后一个排列没有后继,返回false,每执行一次,a就变成它的后继

  技术分享

如果交换a[0],a[1],a[2]的大小,排列的次数会改变

#include <bits/stdc++.h>
using namespace std;
#define Maxn 10

int main(){
    int a[3];
    a[0]=3;a[1]=2;a[2]=1;
    do{
        cout<<a[0]<<" "<<a[1]<<" "<<a[2]<<endl;
    }while (next_permutation(a,a+3)); //参数3指的是要进行排列的长度
}

  技术分享

排列组合函数next_permutation()

标签:

原文地址:http://www.cnblogs.com/yakoazz/p/5848762.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!