## 丑数(最小因子)
* 请求出第20个丑数。(最小因子只有2、3、5的数,称作丑数(Ugly Number)。
* 例如6、8都是丑数,但14不是,因为它包含因子7,习惯上我们把1当做是第一个丑数);
function getUglyNumber(max){
// 一层for循环,直到num=max break;
// 第一个丑数是1
var num=1;
// 设置一个遍历数
var i=1;
while(num<max){
i++;
// 存储当前数
var c=i;
// 该数能被2,3,5整除的话
while(true){
// 2/2 3/3 5/5 ==1
if(c==1){
num++;
break;
}else if(c%2==0){
c=c/2;
}else if(c%3==0){
c=c/3;
}else if(c%5==0){
c=c/5;
}else{
break;
}
}
}
return i;
}
算法数学部分——丑数(最小因子)
最新推荐文章于 2022-07-18 00:39:48 发布