面试题12:打印1到最大的n位数
打印1到最大的n位数
def print1ToMaxOfNDigits(n):
if n <= 0:
return
def printNumber():
isBeginning0 = True
for i in range(n):
if isBeginning0 and number[i] != '0':
isBeginning0 = False
if not isBeginning0:
print("".join(number[i:]))
break
def print1ToMaxOfNDigitsRecursive(index):
if index == n-1:
printNumber()
return
for i in range(10):
number[index+1] = str(i)
print1ToMaxOfNDigitsRecursive(index+1)
number = ['' for i in range(n+1)]
for i in range(10):
number[0] = str(i)
print1ToMaxOfNDigitsRecursive(0)
关注公众号:数据结构与算法那些事儿,每天一篇数据结构与算法