Re: [問題] 有另外的資料結構來代表大型的多維陣列嗎?
※ 引述《zanyking (遙遠的旅人)》之銘言:
: ※ 引述《chiachenyen (阿成)》之銘言:
: : 近來需要寫一支程式,有一個小困擾~
: : 程式需要計算數十維度的資料,若宣告成:
: : int record[][][][][][][][][][]=new int[25][25][25][25][25][25][25][25][25][25];
: : 顯然得,不可行~
: : 這麼大的多維陣列,其實也可能只有100個elements會用到(或是更少),但因為這些elements都會分散在這個多維陣列之中,我有考慮過用vector來作,也就是說,用"編號"的方式來作,這麼一來,如果只需100個elements,也就真正的只需100個~
: : 如了這個外,不曉得各位先進還有其他建議的方法嗎~?
======================================================
: 分析一下你的問題:
: 1.資料的Index有十個左右的int屬性
: 2.總資料比數大約100筆左右
: 3.在這個資料結構上定義的運算未知。
: 4.資料的CRUD趨向不明。
======================================================
感謝各位先進的建議~
怒小弟不才,zanyking先進所說的第1、3、4項,可否再請您說明,雖然小弟的問題已解決
可是,仍希望可以更清楚zanyknig先進您所分析的項目。
: 資料結構的決定是跟運算有很大的相依性的。
: 不知道你會需要做什麼樣的運算就不太好設計適當的資料結構。
: 依你的資料量來看,應該之前其他網友建議的稀疏矩陣方式就很好用了。
: 不過在儲存架構上,如果知道Index之間的關係與運算Iteration的方式
: 則更能設計有效率的結構。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.127.22.252
討論串 (同標題文章)