資料結構的選擇

cyxlzzs發表於2013-05-09

通用資料結構貌似包括:陣列、連結串列、樹(二叉樹、平衡樹)、雜湊表。之所以稱之為通用資料結構是因為它們通過關鍵字的值來儲存、查詢資料。

現實中,要想儲存人事記錄、貨存記錄、合同表或銷售業績表等資料,則只需要一般用途的資料結構,即通用資料結構即可。至於具體使用哪一種資料結構,可以參考(哥,只是參考)下圖:

請不要從上圖中得出“平衡樹”是最好的結論。我們還是要堅持“具體問題,具體分析”的結論的。

這些最快的結構也是有缺陷的(貌似一定要這樣說,才顯的嚴謹、有水平。所以以後出書的時候要記得啊)。首先,它們的程式在不同程度上比陣列和連結串列的複雜;其次,雜湊表要求預先知道要儲存多少資料,資料對儲存空間的利用率也不是非常高。普通的二叉樹對順序的資料來說,會變成緩慢的O(N)級操作(好被啊);而平衡樹編起來顯然較為困難(對於我這種高人呢)。

摘自:《java資料結構和演算法》 圖15.1

原帖:http://hi.baidu.com/haifengjava/item/a672923e06c4b3be124b14e9

相關文章