劍指offer Java版 34醜數

2021-07-11 11:02:51 字數 532 閱讀 8164

醜數:返回第n個醜數

只包含因子 2 3 5的數稱為醜數,第乙個醜數是 1

採用輔助陣列的方法,提高時間效率 – 下乙個醜數一定是已有的醜數乘以2 或者 3 或者 5 得到的

public

class _q34

while(uglyarray[index3]*3

<= uglyarray[nextuglyindex])

while(uglyarray[index5]*5

<= uglyarray[nextuglyindex])

nextuglyindex++;

}return uglyarray[nextuglyindex-1];

}private

intmininthree(int num1, int num2, int num3)

}

測試**:

public class _q34test extends testcase 

}

劍指offer JAVA版題解(全)

序號 題解牛客 oj 資料結構型別 03 劍指offer 二維陣列中的查詢 二維陣列中的查詢 陣列04 劍指offer 替換空格 替換空格 字串05 劍指offer 從尾到頭列印鍊錶 從尾到頭列印鍊錶 鍊錶06 劍指offer 重建二叉樹 重建二叉樹樹07 劍指offer 用兩個棧實現佇列 用兩個棧...

劍指offer 34 醜數

只包含因子2 3 5的數稱為醜數。方法1 逐個判斷每個整數是不是醜數 方法2 建立陣列儲存已經找到的醜數,用空間換時間的方法 每乙個醜數都是前面的醜數乘以2 3 5得到的 已有醜數中最大醜數為m,下乙個醜數應該是已知醜數分別乘以2 3 5的第乙個大於m的數,記錄,每個乘以2 3 5第乙個大於m的位置...

劍指Offer 34 醜數

把只包含因子2 3和5的數稱為醜數,求從小到大的順序的第1500個數。1是第乙個醜數。乙個醜數可以表示成2m3 n5 k2 m3 n5 k 2m3n5k 其中,m n k為自然數zzz。醜數從小到大的順序其實是m n k這三個數中的其中乙個數加一。生成過程 陣列res初始化,儲存了第乙個元素res ...