面试题:打印1至最大的N位数
summary
:
题目
输入数字n,打印从1到最大的n位十进制数。如输入3,则打印1, 2, 3 ... 999。
分析
考虑特殊情况,n是否可以是负数或0。问面试官,n是否可以很大?如果n可以是很大,则 不能用int, long long来存,这个时候变成了高精度数据的问题,应该用字符串。而从 1到最大的N位数,其实就是这么多位数字的从0到9的全排列,于是可以递归地打印出来。
代码
::: {.code-include lexer="cpp"} ./print_one_to_max_n_digit_number.cpp :::