读书人

26个字母组合算法--急该怎么解决

发布时间: 2011-12-30 23:30:45 作者: rapoo

26个字母组合算法--急
想实现如下内容:
有a-z 26个字母,如何实现所有字母的组合。产生的位数为1到26
产生结果为:
a,b,..z
ab....az
ba....bz
abc...abz
abcdefg..a----abca。。Z
求算法。


[解决办法]

C# code
            StringBuilder sb = new StringBuilder();            string Table = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";            int[] p = new int[26];//字符索引            int Length = 3 - 1;//字符串的长度            int i = Length;            p[i] = -1;            //初始化sb变量            int a =0;            while (a++ <= Length) sb.Append("A");            //遍历解空间            while (i > -1)            {                if (p[i] == 25)                {                    sb.Remove(i, 1);                    i--;                    continue;                }                else                {                    p[i] = p[i] + 1;                    sb[i] = Table[p[i]];                     if (i < Length)                    {                        i++;                        p[i] = -1;                        sb.Append(" ");                        continue;                    }                }                Console.WriteLine ( sb.ToString() );            } 

读书人网 >C#

热点推荐