千家信息网

LeetCode怎么打印从1到最大的n位数

发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,这篇文章主要介绍LeetCode怎么打印从1到最大的n位数,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!题目:输入数字n,按顺序从1打印到最大的n位十进制数。例如,输入3,则打
千家信息网最后更新 2025年01月18日LeetCode怎么打印从1到最大的n位数

这篇文章主要介绍LeetCode怎么打印从1到最大的n位数,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

题目:输入数字n,按顺序从1打印到最大的n位十进制数。例如,输入3,则打印1, 2, 3, ..., 999

def printToMaxOfNDigits(n):    """    打印1, 2, ..., 99999(n个9)    可以从1开始然后用大数加法加到n个9,也可以使用递归方法实现    """    def helper(idx):        # 递归出口就是设置完最后一位        if idx == n - 1:            for j in range(n):                if number[j] != '0':                    break            if number[j] == '0':                return            else:                print(''.join(number[j:]))            return        for k in range(10):            # 对于每一位都有10个数字可选,设置完当前位之后就递下去设置下一位,设置完n位就打印            number[idx + 1] = str(k)            helper(idx + 1)    if n < 1:        return    number = ['0'] * n    for i in range(10):        # 对于第1位,有10个数字可选        number[0] = str(i)        helper(0)

以上是"LeetCode怎么打印从1到最大的n位数"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

0