赞
踩
话不多说,上代码:
1、输出序列{1,2,3,4}字典序的全排列。
-
- int main()
- {
- int a[4]={1,2,3,4};
- sort(a,a+4);
- do
- {
- for(int i=0;i<4;i++)
- cout<<a[i]<<" ";
- cout<<endl;
- }while(next_permutation(a,a+4));
- }
截图:
2、输入任意一个字符串,输出其字典序的全排列
- int main()
- {
- string str;
- cin>>str;
- sort(str.begin(),str.end());
- do{
- cout<<str<<endl;
- }while(next_permutation(str.begin(),str.end()));
- }
截图:
3.求{1,2,3,......m}的第那个排列,
如6个数的结合{1,2,3,4,5,6},要求出第n=2345个排列;
- int main()
- {
- int a[6]={1,2,3,4,5,6};
- sort(a,a+6);
- int n=0;
- do{
- if(n==2345)
- {
- for(int i=0;i<6;i++)
- cout<<a[i];
- cout<<endl;
- break;
- }
- n++;
- }while(next_permutation(a,a+6));
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。