next_perm_example.cpp
来自「利用递归查找数字的排列组合 使用了STL技术」· C++ 代码 · 共 90 行
CPP
90 行
//Examples of using next_permutation
#include<iostream>
#include<vector>
#include<string>
#include<algorithm>
using namespace std;
//using pointers
void display(char* c_str)
{
cout<<c_str<<endl;
}
int main()
{
char ca[]="1234";
display(ca);
for(int i=0;i<24-1;++i)
{
next_permutation(ca,ca+4);
display(ca);
}
return 0;
}
/*
//using iterators
void display(vector<char>::iterator begin,vector<char>::iterator end)
{
for(vector<char>::iterator it= begin;it!=end;++it)
cout<<*it;
cout<<endl;
}
int main()
{
//char ca[]="1234";
vector<char> ca;
ca.push_back('1');
ca.push_back('2');
ca.push_back('3');
ca.push_back('4');
display(ca.begin(),ca.end());
for(int i=0;i<24-1;++i)
{
next_permutation(ca.begin(),ca.end());
display(ca.begin(),ca.end());
}
return 0;
}
*/
/*
//using arrays of string
void display(string* strstart, string* strend)
{
for(string* it= strstart;it!=strend;++it)
cout<<*it<<" ";
cout<<endl;
}
int main()
{
string* strarray=new string[3];
strarray[0]="Red";
strarray[1]="Green";
strarray[2]="Blue";
display(strarray,strarray+3);
for(int i=0;i<6-1;++i)
{
next_permutation(strarray,strarray+3);
display(strarray,strarray+3);
}
delete [] strarray;
return 0;
}
*/
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?