leetcode_386 字典序排数

168 阅读1分钟

要求

给你一个整数 n ,按字典序返回范围 [1, n] 内所有整数。

你必须设计一个时间复杂度为 O(n) 且使用 O(1) 额外空间的算法。

示例 1:

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

示例 2:

输入:n = 2
输出:[1,2]

核心代码

class Solution:
    def lexicalOrder(self, n: int) -> List[int]:
        return sorted(range(1,n + 1),key=str)

image.png

解题思路:我们直接调用sorted函数,在排序的时候指定键是字符串的形式,应用python解决比较简单。