📄 text1.cpp
字号:
#include <cstdlib>
#include <iostream>
#include <iterator>
#include <algorithm>
using namespace std;
template<typename BidirectionalIterator>
bool Next_permutation( BidirectionalIterator first,
BidirectionalIterator last ){
if ( first == last)
return false;
BidirectionalIterator i = first;
++i;
if (i == last)
return false;
i = last;
--i;
while( 1 ){
BidirectionalIterator ii = i;
--i;
if (*i < *ii){
BidirectionalIterator j = last;
while (!(*i < *--j));
std::iter_swap(i, j);
std::reverse(ii, last);
return true;
}
if (i == first){
std::reverse(first, last);
return false;
}
}
}
int main(int argc, char *argv[])
{
char s[]="aac";
sort( s, s+sizeof(s)/sizeof(s[0])-1 );
do{
copy( s, s+sizeof(s)/sizeof(s[0])-1, ostream_iterator<char>(cout," ") );
cout<<endl;
}while( Next_permutation( s, s+sizeof(s)/sizeof(s[0])-1 ) );
system("PAUSE");
return EXIT_SUCCESS;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -