看板 [ java ]
討論串[問題] 有沒有辦法取代或改善List的效率?
共 12 篇文章

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者H45 (!H45)時間18年前 (2007/05/23 12:37), 編輯資訊
0
0
0
內容預覽:
經測試,你的 Code 運作速度比原程式碼還慢. nodeNumber = 100,000. CHANCE_MOVE = 0.05. 原 PO 的版本: 217ms. 你的版本: 3000ms. 請問是不是哪裡有漏掉了呢?. (文末附上我的測試碼). public void test() {. lo
(還有2491個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者superlubu (勁過呂布)時間18年前 (2007/05/23 11:13), 編輯資訊
0
0
0
內容預覽:
這一部份的 codes... 可以改成為:. Random randMachine = new Random(System.currentTimeMillis());. randomArray.clear();. for (int i=0; i<nodeNumber * CHANCE_MOVE; i
(還有994個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者tkcn (小安)時間18年前 (2007/05/23 00:31), 編輯資訊
0
0
0
內容預覽:
剛剛才仔細看了程式碼,. 如果說 nodeNumber 很大,. 而 CHANCE_MOVE 不怎麼大的話 (意即最後所需的亂數數量). 那麼我會建議換另一種寫法,. 直接產生亂數,並且檢查這個亂數是不是已經產生過了. 重複的話就重新產生一次. --. 發信站: 批踢踢實業坊(ptt.cc).

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者jej (我開始困惑了)時間18年前 (2007/05/23 00:12), 編輯資訊
0
0
0
內容預覽:
後面這一段. if( i < nodeNumber * CHANCE_MOVE ) {. randomArray.add( originalRandomArray.get( i ) );. }. 不知道可不可以先把randomArray處理完畢. 然後再透過system.arraycopy處理. -

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者Mewra時間18年前 (2007/05/22 19:46), 編輯資訊
0
0
0
內容預覽:
謝謝指教. 我等下來試試看直接指定大小來處理.. 還有shuffle雖好用, 但我剛發現它也增加了25%的處理時間. 待我稍微改進後再來跟大家報告. --. 發信站: 批踢踢實業坊(ptt.cc). ◆ From: 123.193.180.59.