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

文章目录

  • 【LeetCode】剑指 Offer 17. 打印从1到最大的n位数
  • 一、大数

一、大数

  1. 将 1~9 加入队列
  2. 对队列中所有元素按队列顺序取出,并加入答案。同时,若提取的字符串长度小于 n,那么就在它的末尾补充 0~9,依次加入队列
  3. 重复步骤 2,直至队列为空,返回答案
class Solution{public int[] printNumbers(int n){int[] arr = new int[(int)Math.pow(10,n) - 1];   //算出数组长度Queue<String> q = new LinkedList<>();//将 1~9 加入队列for(int i = 1; i <= 9; i++){q.offer(String.valueOf(i));}int index = 0;String str;while(!q.isEmpty()){for(int i = 0; i < 9; i++){//将队列中的元素依次取出并加入答案str = q.poll();arr[index++] = Integer.parseInt(str);//若当前元素长度不够 n,则在末尾补充 0 ~ 9,继续加入队列if(str.length() < n){for(int j = 0; j <= 9; j++){q.offer(str + j);}}}}return arr;}
}
  • 时间复杂度为 O(10^n)
  • 空间复杂度为 O(1)

【LeetCode】剑指 Offer 17. 打印从1到最大的n位数相关推荐

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

    目录标题 算法汇总 题目 关键点 代码 1.解体方法 思路 代码 时间和空间复杂度 2.解题方法,如暴力法 思路 代码 时间和空间复杂度 算法汇总 以下是所有算法汇总,包括GitHub源码地址链接:力 ...

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

    文章目录 解法1:回溯 https://leetcode-cn.com/problems/da-yin-cong-1dao-zui-da-de-nwei-shu-lcof/ 难度:简单   输入数字 ...

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

    题目描述 输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数.比如输入 3,则打印出 1.2.3 一直到最大的 3 位数 999. 示例 示例 1:输入: n = 1 输出: [1,2,3,4 ...

  4. 【算法】剑指 Offer 17. 打印从1到最大的n位数

    文章目录 1.概述 2. 代码 2.1 自研 2.2 系统参数 2.3 大数 1.概述 输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数.比如输入 3,则打印出 1.2.3 一直到最大的 3 ...

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

    题目:输入数值n,按顺序打印从1到最大的n位数,例如输入n=3,则从1,2,3,一直打印到999 陷阱:若使用循环遍历 1- 999...9 并依次输出,当位数n过大时,无论将其存入int或long或 ...

  6. leetcode 打印_剑指 Offer 总结 - leetcode 剑指offer系列

    剑指 Offer 系列完结撒花!! 本篇文章是对整个系列的精华总结, 对系列的每篇文章进行了分类, 并用一句话概括每道题的思路, 方便大家理解和记忆, 当然也包含原文完整链接供大家参考 总的来说, 写 ...

  7. leetcode 打印_剑指 Offer 32 - III 从上到下打印二叉树 III - leetcode 剑指offer

    题目难度: 中等 原题链接 今天继续更新剑指 offer 系列, 这道题相比昨天那道题多了个每层打印方向不同的需求, 聪明的你想到应该如何实现了吗? 老样子晚上 6 点 45 分准时更新公众号 每日精 ...

  8. 【LeetCode 剑指offer刷题】矩阵题1:4 有序矩阵中的查找( 74. Search a 2D Matrix )(系列)...

    [LeetCode & 剑指offer 刷题笔记]目录(持续更新中...) 74. Search a 2D Matrix Write an efficient algorithm that s ...

  9. Leetcode剑指offer(五)

    Leetcode剑指offer 31从上到下打印二叉树 II(32-2.Easy) 1)题目要求 2)我的解法 3)其他解法 4)自己的优化代码 5)学到的东西 32.从上到下打印二叉树 III(32 ...

最新文章

  1. 零基础入门学习Python22-递归2 斐波那契数列和汉诺塔
  2. 用计算机做科学实验评课,科学小实验课程听课心得
  3. MySql ORDER BY 索引优化
  4. 电脑故障,路由器及网络
  5. 125KHz 100cm ID 读卡电路_摄影人最好用的读卡器推荐
  6. python中布尔变量的值为_python 布尔操作实现代码 python是如何定义并使用变量的...
  7. 详细解读二叉树基本操作
  8. Apache Flink 进阶(五):数据类型和序列化
  9. 优秀程序员的10个习惯
  10. property 的详细使用方法
  11. ecg-qc实现ECG信号质量评估
  12. 关于微信公众号开发【微信JS-SDK】报错:config invalid url domian
  13. 有没有人知道这是为什么
  14. python图片修改过、有原图、怎么得到改动的地方_python--修改证件照的大小
  15. Mac安装ps软件,提示Error解决方法
  16. 【回溯专题】—— 回溯算法入门篇
  17. 【分布式系统】分布式事务(2PC 3PC TCC 最终一致性)
  18. 程序员35岁前成功的12条黄金法则
  19. kafka —— consumers 消费者 group 找不到得原因
  20. 服务器cpu性能如何测试,CPU性能测试(1)_服务器评测与技术-中关村在线

热门文章

  1. php 购物车案例教程,php初步实现购物车功能的实例分析
  2. iphone控制电脑_苹果远程控制电脑软件免费下载-超控Controlax(iPhone远程控制Windows)v1.1 最新版...
  3. 容器的进程与namespace、rootfs
  4. Intellij IDEA 配置
  5. 目录与文件的权限意义
  6. Direct2D 如何关闭抗锯齿
  7. jQuery Easy UI ProgressBar(进度条)组件
  8. 使用PostBackUrl属性实现跨页面传值
  9. urtracker 项目管理工具
  10. 一些常用的辅助代码 (网络收藏)