且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

LeetCode——剑指offer17【打印从1到最大的n位数】

更新时间:2021-09-28 02:21:25

目录

题目

解题思路

代码详解


题目

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

题目概述:

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

示例:

LeetCode——剑指offer17【打印从1到最大的n位数】

基础框架

class Solution {
    public int[] printNumbers(int n) {
    }
}

解题思路

for循环直接遍历即可!

①利用Math函数的pow方法生成末端数字;

②由于返回类型为int数组,故默认在int整型取值范围内,否则当n较大时,会超出范围!

代码详解

class Solution {
    public int[] printNumbers(int n) {
       int last=(int)Math.pow(10,n)-1;
        int[] arr=new int[last];
        for(int i=0;i<last;i++){
            arr[i]=i+1;
        }
        return arr;
    }
}

LeetCode——剑指offer17【打印从1到最大的n位数】