剑指offer——33.丑数
2017-09-04 19:30
295 查看
题目描述
把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。代码
思路:下一个丑数是由数组中某个丑数A * 2,B * 3,C * 5中的最小值得来的。function GetUglyNumber_Solution(index) { // write code here if(index==0) return 0 var uglys=[1]; var factor2=0,factor3=0,factor5=0; for(var i=1;i<index;i++){ uglys[i]=Math.min(uglys[factor2]*2,uglys[factor3]*3,uglys[factor5]*5) if(uglys[i]==uglys[factor2]*2) factor2++; if(uglys[i]==uglys[factor3]*3) factor3++; if(uglys[i]==uglys[factor5]*5) factor5++; } return uglys[index-1] }
相关文章推荐
- 剑指Offer面试题33把数组排成最小的数,面试题34丑数
- 剑指offer 33 丑数
- 【剑指offer】面试题33:二叉搜索树的后序遍历序列
- 剑指 offer代码解析——面试题34丑数
- 剑指offer:丑数
- [剑指offer][面试题34]丑数
- 剑指offer 33 把数组排成最小的数
- 剑指offer-丑数(Java)
- 剑指Offer 34题 丑数 Java版
- 剑指offer——丑数
- 剑指offer 面试题34 丑数
- 剑指Offer——面试题33:把数组排成最小的数
- 剑指offer—丑数
- 【剑指Offer】丑数
- 【剑指Offer】面试题34:丑数
- 剑指offer33 把数组排成最小的数
- 剑指 offer代码解析——面试题34丑数
- 【九度OJ1214】|【剑指offer34】丑数
- 剑指offer的34题 丑数
- 剑指offer之面试题34丑数