题解 | #全排列#
全排列
http://www.nowcoder.com/practice/5632c23d0d654aecbc9315d1720421c1
#include<iostream> #include<vector> #include<algorithm> using namespace std; string Str; void pailie(string str){ if(str.size()==Str.size()){ cout<<str<<endl; return; } for(int i = 0; i < Str.size(); i++){ if(str.find(Str[i])==string::npos) pailie(str+Str[i]); } } int main(){ cin>>Str; sort(Str.begin(),Str.end()); pailie(""); return 0; }
全排列,每次确定字符串中的一位。
结束条件是排列得到的字符串和要求的字符串长度相同。