


















输出一个字符串所有排列。注意有重复字符。
1
char[] p;
2
void perm(char s[], int i, int n){
3
int j;
4
char temp;
5
for(j=0;j<n;++j){
6
if(j!=0 && s[j]==s[j-1]);
7
elseif(s[j]!='@'){
8
p[i]=s[j];
9
s[j]='@';
10
if(i==n-1){
11
p[n]='\0';
12
printf("%s", p);
13
}else{
14
perm(s,i+1,n);
15
}
16
s[j]=p[i];
17
}
18
}
19
}
1
void main() {
2
char s[N];
3
sort(s);
4
perm(s,0,strlen(s));
5
}
6
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。