Re: [問題] 指數容量陣列的問題

看板C_Sharp (C#)作者 (晴天)時間19年前 (2006/05/07 16:09), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
※ 引述《zanyking (遙遠的旅人)》之銘言: : ※ 引述《mygod1220 (晴天)》之銘言: : 你試看看double[][]吧: : double [][] matrix = new double[1<<N][1<<N]; : 只要Array index沒有超過long極限,應該可以跑。 感謝! 這種陣列的確可以容納 剛剛的敘述有一點錯誤 輸入的大小應該是0(N x 2^N) 我是要儲存一個N層的FULL B.T. LEVEL i有2^i-1個節點 這樣可以每一層配置剛剛好的節點數目給它 剛剛試過N=20...按鈕一按結果很快就出來 N=25...等大概五秒 N=30 記憶體就不夠....... : 1000...2的一千次方有多大你知道嗎@@ : Int32的極限值為: 1<<31-1; : 數學表示法為:1* 2^31 -1... : 2^1000?你確定他沒有用一些大數處理的演算法解決? : 而且,就算是超超級電腦1<<1000可以用好了,計算一下他alocat的記憶體。 : 2^1000 * 2^1000 *32(bit) = ?你是用超大型硬碟陣列當RAM用嗎? : 我肯定它會爆。 我看過別人用c++寫的code 基本上我們是一起討論解法的 只是程式語言用的不同 所以他並沒有用什麼特殊的演算法 N=100的時候,也是很快就算出來了 也沒有OutOfMemory的錯誤 ps:他是宣告一個class node,然後再用一個**Tree指向每個node -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.138.216.217 ※ 編輯: mygod1220 來自: 220.138.216.217 (05/07 17:41)
文章代碼(AID): #14NQicuA (C_Sharp)
文章代碼(AID): #14NQicuA (C_Sharp)