题目描述
把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。

public class Solution {public int GetUglyNumber_Solution(int index) {if(index==0) return 0;int[] urgly = new int[index];urgly[0] = 1;int index2=0,index3=0,index5=0;int urglyindex=1,min;while(urglyindex<index){min=urgly[index2]*2<urgly[index3]*3?urgly[index2]*2:urgly[index3]*3;min=min<urgly[index5]*5?min:urgly[index5]*5;urgly[urglyindex] = min;while(urgly[index2]*2<=min){index2++;}while(urgly[index3]*3<=min){index3++;}while(urgly[index5]*5<=min){index5++;}urglyindex++;}return urgly[index-1];}
}

这道题的思路是:由于丑数的因子只能是2,3,5,因此保存三个变量,因此每个丑数只能是这三个数相乘,用之前保存的不同的丑数分别乘以2,3,5,他们的结果都要大于上一个丑数的值,取这三者间最小的就是现在要求的丑数

剑指offer—丑数相关推荐

  1. 剑指Offer丑数问题

    这是剑指第一次卡死我的题--记录一下 首先看题目: 把只包含质因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含质因子7. 习惯上我们把1当做是第一个丑数 ...

  2. 剑指offer——丑数

    题目描述 把只包含质因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含质因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 思路: ...

  3. 剑指Offer49—丑数

    剑指Offer49-丑数 题意 我们把只包含质因子 2.3 和 5 的数称作丑数(Ugly Number).求按从小到大的顺序的第 n 个丑数. 丑数即只能被 2.3.5 整除.判断一个数是不是丑数的 ...

  4. 【前端js】实现剑指offer|leetcode(二)——数组题目集合

    文章目录 一.数组去重 1. 对排序数组去重(leetcode 26. 删除排序数组中的重复项) 2. 检查是否存在重复元素(leetcode 217. 存在重复元素) 3. 检查相邻k个元素是否存在 ...

  5. 剑指offer:丑数

    题目描述 把只包含质因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含质因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 解题思 ...

  6. 【剑指offer】丑数

    把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. leetcode上也 ...

  7. 《剑指offer》-- 把数组排成最小的数、丑数、二进制中1的个数、表示数值的字符串、替换空格

    一.把数组排成最小的数: 1.题目: 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为 ...

  8. 【LeetCode】剑指 Offer 49. 丑数

    [LeetCode]剑指 Offer 49. 丑数 文章目录 [LeetCode]剑指 Offer 49. 丑数 package offer;public class Solution49 {publ ...

  9. 剑指offer——面试题34:丑数

    剑指offer--面试题34:丑数 Solution1: 最容易想到的,也是最不可能AC的 class Solution {public:int GetUglyNumber_Solution(int ...

最新文章

  1. pytorch 训练过程acc_【图节点分类】10分钟就学会的图节点分类教程,基于pytorch和dgl...
  2. .NET Framework 3.5 中的功能简介(1)
  3. Boost:bind绑定类型测试
  4. MySQL查询in操作 查询结果按in集合顺序显示(转)
  5. c++ (QT)笔记
  6. h3c 虚拟服务器 下一跳,H3C vLNS系列虚拟L2TP网络服务器 配置指导-E0324-5W100
  7. java中的泛型(一)
  8. Emacs之快捷键大全
  9. Jsoup解析网页html
  10. You need to use a Theme.AppCompat theme
  11. 十二进制转二进制--2018
  12. 用计算机将复数转换成角度,卡西欧FX-991ES计算器能计算电路里的复数加减乘除然后换算成角度吗?...
  13. 选手投票html,选手投票网页制作
  14. Dns数据包内容分析
  15. 利用stm32cubemx生成单极性倍频spwm调制代码步骤
  16. Mobaxterm X server远程Linux服务器使用浏览器(firefox或google chrome)
  17. 取模 乘法和除法运算在CPU和GPU上的效率
  18. python画图--柱状图
  19. 打印机扫描计算机远程扫描仪,未在设备上将扫描类型设置为(远程扫描仪)的解决方法...
  20. 初识Photoshop CS6

热门文章

  1. 主引导记录MBR/硬盘分区表DPT/主分区、扩展分区和逻辑分区/电脑启动过程
  2. 053试题 331/507/564/574/625/673 - restore datafile
  3. html 定义列表dddt,DDD - 概述 - (一)
  4. 高通新款高端芯片抢闸发布,小米将首发,趁机从华为手里抢夺市场
  5. python中循环结构后怎么用sum函数怎么用_python sum函数 教程《python的sum函数怎么用?》...
  6. java设计按月每天签到_java微信签到功能实现:java做的一个简易的微信签到系统的案例...
  7. tf.train.Coordinator
  8. 开关电源产生浪涌电流的原因
  9. GitHub Pages + Hexo搭建个人博客网站,史上最全教程
  10. wiki百科词向量训练资料及其模型