今日题目(剑指Offer系列)
剑指 Offer 17. 打印从1到最大的n位数
输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。 比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。
示例:
示例 1: 输入: n = 1 输出: [1,2,3,4,5,6,7,8,9]
解题思路:
>这道题目其实可以用全排列 >但是做Java时看到返回的是数组类型 >就说明不会发生大数越界的问题 >所以可以用正常解法
Python解法:
class Solution: def printNumbers(self, n: int) -> List[int]: return list(range(1,10**n))
Java解法:
class Solution { public int[] printNumbers(int n) { int[] res=new int[(int)(Math.pow(10,n))-1]; for(int i=0;i<res.length;i++){ res[i]=i+1; } return res; } }