import org.junit.Test;public class NthUglyNumber {/*** @param n: An integer* @return: the nth prime number as description.* 答案来源:https://blog.csdn.net/htt789/article/details/79992923*//*** 丑数 II* 设计一个算法,找出只含素因子2,3,5 的第 n 小的数。* <p>* 符合条件的数如:1, 2, 3, 4, 5, 6, 8, 9, 10, 12...* <p>* 样例* 如果n = 9, 返回 10* <p>* 挑战* 要求时间复杂度为O(nlogn)或者O(n)* <p>* 1* 2 3 5  2         2* 4 3 5  3         3* 6 4 5  4         2* 8 6 5  5         5* 10 8 6  6        3* 12 10 8 8        4*/public int nthUglyNumber(int n) {// write your code hereif (n == 1) {return 1;} else {int uglyNums[] = new int[n];uglyNums[0] = 1;int p5 = 0, p2 = 0, p3 = 0;for (int i = 1; i < n; i++) {uglyNums[i] = Math.min(Math.min(uglyNums[p2] * 2, uglyNums[p3] * 3), Math.min(uglyNums[p2] * 2, uglyNums[p5] * 5));if (uglyNums[i] == uglyNums[p2] * 2) {p2++;}if (uglyNums[i] == uglyNums[p3] * 3) {p3++;}if (uglyNums[i] == uglyNums[p5] * 5) {p5++;}}return uglyNums[n-1];}}@Testpublic void testNthUglyNumber(){System.out.println(nthUglyNumber(9));}
}

转载于:https://www.cnblogs.com/wei1/p/9582065.html

LintCode 4.丑数相关推荐

  1. usaco ★Humble Numbers 丑数

    ★Humble Numbers 丑数 对于一给定的素数集合 S = {p1, p2, ..., pK}, 来考虑那些质因数全部属于 S 的数的集合.这个集合包括,p1, p1p2, p1p1, 和 p ...

  2. 剑指offer:丑数

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

  3. 【剑指offer-Java版】34丑数

    丑数:返回第N个丑数 只包含因子 2 3 5的数称为丑数,第一个丑数是 1 采用辅助数组的方法,提高时间效率 – 下一个丑数一定是已有的丑数乘以2 或者 3 或者 5 得到的 public class ...

  4. java丑数算法_LintCode Java算法练习(4)-----丑数II

    题目:题目 1 = 2^0 * 3^0 * 5^0 2 = 2^1 * 3^0 * 5^0 3 = 2^0 * 3^1 *5^0 . . . 依次类推,这便是丑数 假设  uglyNumber = 2 ...

  5. AC日记——丑数 codevs 1246

    1246 丑数 USACO  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果 题目描述 Description 对于一给定的素数集合 ...

  6. 【剑指offer】丑数

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

  7. 【leetcode 简单】 第七十三题 丑数

    编写一个程序判断给定的数是否为丑数. 丑数就是只包含质因数 2, 3, 5 的正整数. 示例 1: 输入: 6 输出: true 解释: 6 = 2 × 3 示例 2: 输入: 8 输出: true ...

  8. 《剑指offer》第四十九题(丑数)

    // 面试题49:丑数 // 题目:我们把只包含因子2.3和5的数称作丑数(Ugly Number).求按从小到 // 大的顺序的第1500个丑数.例如6.8都是丑数,但14不是,因为它包含因子7. ...

  9. 算法题3 寻找丑数数值逼近

    题目 只包含因子2.3.5的数字被称为丑数.例如4和6是丑数,而14不是丑数,因为含有因子7.习惯上把1作为第一个丑数.求按从小到大顺序的第1500个丑数. 分析 假设一个丑数顺序数组ugly_num ...

最新文章

  1. ElasticSearch小操之Marvel,Sense
  2. k8s 命令 重启_快速入门Kubernetes(K8S)——资源清单
  3. 金蝶清空日志数据库脚本
  4. 漏洞挖掘 符号执行_简述符号执行
  5. python向mysql中添加数据_Django save()方法不向Mysql数据库插入数据
  6. 三维重建5:场景中语义分析/语义SLAM/DCNN-大尺度SLAM
  7. env-cmd is not recognized as an internal or external command
  8. 历史上的昨天和今天(zz)
  9. Linux下coredump调试3:补录
  10. opencv 图像颜色空间转换和特定颜色物体追踪
  11. 电子沙盘技术和android,ERP沙盘与电子沙盘的区别
  12. 很火的清新PHP在线扒站程序源码
  13. 如何获取Windows 10的旧默认桌面背景
  14. 腾讯云CDN常见问题
  15. torch.optim优化算法理解之optim.Adam()
  16. java编译找不到符号_java编译时找不到符号,怎么处理
  17. presto字符串转日期
  18. 芯动联科在科创板IPO过会:拟募资10亿元,金晓冬为实际控制人
  19. FPGA:三种基本门电路设计(与门、或门、非门)
  20. 税务系统服务器维护导致逾期申报了,山东省电子税务局逾期申报处罚等功能升级啦!...

热门文章

  1. 网络传输---HttpURLConnection
  2. Bootstrap 基础五表格
  3. SQL Sever 常用语句总结
  4. OpenJudge 2972(确定进制)
  5. 图文解说:Discuz论坛基础设置第一弹
  6. 关于超过255台电脑的内网IP规划问题
  7. 当VS2005卸载不干净时
  8. Flask + Vue 搭建简易系统步骤总结
  9. 在shell中使用echo命令输出带颜色的文本-转
  10. LeetCode 59. Spiral Matrix II