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

注意这里的n是表示位数,所以最大的数也就是枚举每一位都是9的情况。
最后从1枚举到最后一位即可。
class Solution {
public int[] printNumbers(int n) {
if(n <= 0) {
return new int[0];
}
int total = 0;
while(n-- != 0) {
total = total * 10 + 9;
}
int[] res = new int[total];
for(int i = 0;i < total; i++) {
res[i] = i + 1;
}
return res;
}
}

浙公网安备 33010602011771号