程序在python中生成前n个字典编号
假设我们有一个数字n,我们必须找到按词典顺序排序的前n个数字。
因此,如果输入像n=15,那么输出将是[1、10、11、12、13、14、15、2、3、4、5、6、7、8、9]
为了解决这个问题,我们将按照以下步骤操作:
数:=1
ans:=具有单个元素计数的列表
当ans<n时,
count:=count的商/10
数:=数+1
虽然countmod10与0相同,但是
在ans结尾处插入计数
count:=count的商/10
数:=数*10
当count>n时,执行
返回ans
让我们看下面的实现以更好地理解:
范例程式码
class Solution: def solve(self, n): count = 1 ans = [count] while len(ans) < n: count *= 10 while count > n: count = count //10- count += 1 while count % 10 == 0: count = count //10- ans.append(count) return ans ob = Solution()n = 15 print(ob.solve(n))
输入值
15
输出结果
[1, 10, 11, 12, 13, 14, 15, 2, 3, 4, 5, 6, 7, 8, 9]