LeetCode 剑指 Offer 17. 打印从1到最大的n位数

129 阅读1分钟

题目地址(剑指 Offer 17. 打印从1到最大的n位数)

leetcode-cn.com/problems/da…

题目描述

输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。

示例 1:

输入: n = 1
输出: [1,2,3,4,5,6,7,8,9]


 

说明:

用返回一个整数列表来代替打印
n 为正整数

思路

关键点

代码

  • 语言支持:Python3

Python3 Code:


class Solution:
    def printNumbers(self, n: int) -> List[int]:
        res = n*"9"
        return [i for i in range(1, int(res)+1)]

复杂度分析

令 n 为数组长度。

  • 时间复杂度:O(n)O(n)
  • 空间复杂度:O(n)O(n)