打印从 1 到最大的 n 位数
题目剖析
首先得定义一个数组,而后依据输出的 n 来判断数组的长度, 而后给数组元素赋值
题解
实际上,本题的次要考点是大数越界状况下的打印。须要解决以下三个问题:
- 示意大数的变量类型:
无论是 short / int / long … 任意变量类型,数字的取值范畴都是无限的。因而,大数的示意利用字符串 String 类型。 - 生成数字的字符串集:
- 递归生成全排列
基于分治算法的思维,先固定高位,向低位递归,当个位已被固定时,增加数字的字符串。例如当 n = 2n=2 时(数字范畴 1 – 991−99),固定十位为 00 – 99,按程序顺次开启递归,固定个位 00 – 99,终止递归并增加数字字符串。
题解
没看懂参考