C#查找字符串所有排列组合的方法
本文实例讲述了C#查找字符串所有排列组合的方法。分享给大家供大家参考。具体实现方法如下:
//1.removefirstchar
//2.findpermutationsoftherestofchars
//3.Attachthefirstchartoeachofthosepermutations.
//3.1foreachpermutation,movefirstCharinallindexes
//toproduceevenmorepermutations.
//4.Returnlistofpossiblepermutations.
publicstring[]FindPermutations(stringword)
{
if(word.Length==2)
{
char[]_c=word.ToCharArray();
strings=newstring(newchar[]{_c[1],_c[0]});
returnnewstring[]
{
word,
s
};
}
List<string>_result=newList<string>();
string[]_subsetPermutations=FindPermutations(word.Substring(1));
char_firstChar=word[0];
foreach(stringsin_subsetPermutations)
{
string_temp=_firstChar.ToString()+s;
_result.Add(_temp);
char[]_chars=_temp.ToCharArray();
for(inti=0;i<_temp.Length-1;i++)
{
chart=_chars[i];
_chars[i]=_chars[i+1];
_chars[i+1]=t;
strings2=newstring(_chars);
_result.Add(s2);
}
}
return_result.ToArray();
}
希望本文所述对大家的C#程序设计有所帮助。