Re: [問題] 有沒有辦法取代或改善List的效率?

看板java作者 (勁過呂布)時間18年前 (2007/05/23 12:54), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串8/12 (看更多)
※ 引述《H45 (!H45)》之銘言: : ※ 引述《superlubu (勁過呂布)》之銘言: : 經測試,你的 Code 運作速度比原程式碼還慢 : nodeNumber = 100,000 : CHANCE_MOVE = 0.05 : 原 PO 的版本: 217ms : 你的版本: 3000ms : 請問是不是哪裡有漏掉了呢? : (文末附上我的測試碼) Orz... 我忘了 ArrayList 頻繁的 remove 和 add 動作所需的時間要很多 Orz 該用 set(index, element) 才對,只要把 swapping 那幾句換成: originalRandomArray.set(i, ranInt); originalRandomArray.set(ranInt, curPos); // swap two numbers in pos ranInt and i 就可以把時間縮短為 78ms (原 PO 版本 109ms) 題外話: 若換成用 int[] 來作同一個問題,時間只用 19ms 囧rz 謝謝 H45 板友的覆查 <(_ _)> 注: 這個 algorithm 若 CHANCE_MOVE >= 0.5 時就會比原 PO 的方法還要慢了 對不起 <(_ _)> -- 勁過呂布的勁過相薄... http://www.wretch.cc/album/superlubu 亂七八糟的,不好意思 m(_ _)m -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 147.8.130.225 ※ 編輯: superlubu 來自: 147.8.130.225 (05/23 12:55) ※ 編輯: superlubu 來自: 147.8.130.225 (05/23 13:05)
文章代碼(AID): #16KyZ_a9 (java)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 8 之 12 篇):
文章代碼(AID): #16KyZ_a9 (java)