字符串全排列
给定字符串, 输出或统计全排列个数. 并去重
void judge(char* p, char* P1){
while(p<p1){
if(*p==*p1)
return true;
}
return false;
}
void permutation(char* orig, char* ind_cur){
if(*ind_cur=='\0')
cout<<orig<<endl;
else{
for(char* p=ind_cur;p!='\0';p++){
if(judge(ind_cur, p))
continue;
char temp = *p;
*p=*ind_cur;
*ind_cur=temp;
permutation(orig, ind_cur+1);
temp=*p;
*p=*ind_cur;
*ind_cur=temp;
}
}
}
void permutation(char* str){
if(str==nullptr)
return;
permutation(str,str);
}