显示小写字母的每个组合

时间:2018-04-13 18:12:29

标签: c#

我想弄清楚如何打印从A,B,C,..,Z AA,AB,..,ZZ ...... AAA,AAB,AAC开始的每个小写字母组合...... HWESA,HWESB,HWESC等等,我希望程序能够不断地打印这些程序,每次将Z作为最后一个字母时长度增加1。

在线看到的代码就像这样

for(int a = 0; a < alphabet.length; a++)
{
    Console.WriteLine(alphabet[a]);
    for(int b = 0; b < alphabet.length; b++)
    {
        Console.WriteLine(alphabet[a]+alphabet[b]);
        //With however many for loops you want which correspond to string length
    }
}

但是,这对我不起作用,因为我希望长度可以无限长(或者在我的程序中,当它与硬编码的字符串匹配时停止)。

1 个答案:

答案 0 :(得分:0)

我在java中尝试使用递归方法,希望你理解逻辑并在C#中写下来。你可以在下面的共享链接中查看整个程序。

大小 - 如果1表示a,b,c ... z        如果2表示aa,ab ... zz

public static void recursion(long size,String prefix)//Recursive method
    {   
    // Base case: size is 0, print prefix
    if(size==0)
    {   System.out.println(prefix);
        return;
    }
     // One by one add all characters from set and recursively 
    // call for size equals to size-1
    for(int i=0;i<26;i++)
    {
         // Next character of input added
        String newPrefix = prefix + s[i];
         // Size is decreased, because we have added a new character
        recursion(size-1,newPrefix);
    }

}

Click Here to View Full Code