程式設計之美面試題12
用java實現該題書上第三種思路如下:
public void PrintToMaxOfNDigits(int n)
{
if(n<0)
return;
char[] number =new char[n];
for(int i=0;i<10;++i)
{
number[0]=i+'0';
Print1ToMaxOfNDigitsRecursively(number,n,0);
}
}
public void Print1ToMaxOfNDigitsRecursively(char[] number,int length,int index)
{
if(index==length-1)
{
printnumber(number);
return;
}
for(int i=0;i<10;++i)
{
number[index+1]=i+'0';
Print1ToMaxOfNDigitsRecursively(number,length,index);
}
}