【剑指offer】面试题49:丑数
我們把只包含因子 2、3 和 5 的數稱作丑數(Ugly Number)。求按從小到大的順序的第 n 個丑數。
?
示例:
輸入: n = 10
輸出: 12
解釋: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 個丑數。
說明:??
1?是丑數。
n?不超過1690。
代碼:
class?Solution?{
????public?int?nthUglyNumber(int?n)?{
?????????int?count1=0,count2=0,count3=0;
????????????int?ugly[]?=?new?int[n];
????????????int?i=1;
????????????if(n==0)
????????????{
????????????????return?0;
????????????}
????????????ugly[0]=1;
????????????while(i<n)
????????????{
????????????????int?min?=?Math.min(ugly[count1]*2,ugly[count2]*3);
????????????????min?=?Math.min(min,ugly[count3]*5);
????????????????ugly[i]?=?min;
????????????????if(ugly[count1]*2==ugly[i])
????????????????{
????????????????????++count1;
????????????????}
????????????????if(ugly[count2]*3==ugly[i])
????????????????{
????????????????????++count2;
????????????????}
????????????????if(ugly[count3]*5==ugly[i])
????????????????{
????????????????????++count3;
????????????????}
??????????????//??System.out.print(ugly[i]+"?");
????????????????++i;
????????????}
????????????return?ugly[i-1];
????}
}
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的【剑指offer】面试题49:丑数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jsp内置对象--application
- 下一篇: JSP页面元素,内置对象及request