剑指Offer - 面试题17. 打印从1到最大的n位数
发布日期:2021-07-01 03:20:11 浏览次数:2 分类:技术文章

本文共 583 字,大约阅读时间需要 1 分钟。

1. 题目

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

示例 1:输入: n = 1输出: [1,2,3,4,5,6,7,8,9] 说明:用返回一个整数列表来代替打印n 为正整数

来源:力扣(LeetCode)

链接:https://leetcode-cn.com/problems/da-yin-cong-1dao-zui-da-de-nwei-shu-lcof
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 计算有多少个数,9,90+9,900+90+9,。。。
class Solution {
public: vector
printNumbers(int n) {
int i=1, N = 0, base = 9; while(i <= n) {
N += base; base *= 10; i++; } vector
ans(N); for(i = 0; i < N; i++) ans[i] = i+1; return ans; }};

在这里插入图片描述

转载地址:https://michael.blog.csdn.net/article/details/104289534 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:剑指Offer - 面试题7. 重建二叉树(递归)
下一篇:剑指Offer - 面试题15. 二进制中1的个数(位运算)

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月24日 14时58分51秒