這是我的一門課程的作業編程問題。我幾年沒有編程,而且我從一開始就不太好。我目前正在通過教程來加快速度,但這需要一些時間。如果你們能幫我解決這個問題,我會非常感激。按升序排列並且沒有重複的沒有2,3或5以外的主要因素的正整數列表
約束:
這個序列的每一項都是形式2^i*3^j*5^k
的正整數,對於所有非負整數i, j, and k
與 i + j + k >= 1.
不能使用數組。解決這個問題的算法必須涉及列表的重複創建和合並。具體爲5 lists; a final list, temp list, and three term lists
。 「
」最終列表通過與當前臨時列表合併而增長,臨時列表反過來被三個術語列表的合併替代,新術語列表通過將新的臨時列表乘以2, 3, and 5 respectively
「
所需的序列會去如下:2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, . . .
你到目前爲止做了什麼?告訴我們你的努力。 – kosa
查看:http://stackoverflow.com/questions/7215315/find-the-kth-least-number-for-expression-2x3y5z – hammar
@Nambari到目前爲止,我只有基本的概念。我實際上並沒有開始編寫程序,因爲我已經熟悉了所有的java語法。我相信我必須做的是創建一個臨時的整數列表1-n。然後我將該列表乘以2,並將結果存儲在另一個列表中,我們稱它爲L2。除了將溫度列表乘以三,並將其稱爲L3之外,我會這樣做。最後用5來完成,並調用列表L5。然後我想我會使用合併排序算法並將結果存儲到Lfinal中,並將其打印出來。 – JessieM