<剑指offer> 第9题

题目:

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

public class Ninth {
    public static int[] getMax(int n){
        if(n <= 0 ){
            return null;
        }
        if(n == 1){
            int[] res = new int[10];
            for(int i = 1; i < 10; i ++){
                res[i] = i;
            }
            return res;
        }
        StringBuilder sb = new StringBuilder();
        sb.append('1');
        for(int i = 0; i < n ; i ++){
            sb.append('0');
        }
        int max = Integer.parseInt(sb.toString());
        int[] res = new int[max];
        for(int i = 1; i < max; i ++){
            res[i] = i;
        }
        return res;

    }

    public static void main(String[] args){
        int[] arr = getMax(4);
        for(int i : arr){
            System.out.println(i);
        }
    }
}
原文地址:https://www.cnblogs.com/HarSong13/p/11325345.html