資料結構的選擇
通用資料結構貌似包括:陣列、連結串列、樹(二叉樹、平衡樹)、雜湊表。之所以稱之為通用資料結構是因為它們通過關鍵字的值來儲存、查詢資料。
現實中,要想儲存人事記錄、貨存記錄、合同表或銷售業績表等資料,則只需要一般用途的資料結構,即通用資料結構即可。至於具體使用哪一種資料結構,可以參考(哥,只是參考)下圖:
請不要從上圖中得出“平衡樹”是最好的結論。我們還是要堅持“具體問題,具體分析”的結論的。
這些最快的結構也是有缺陷的(貌似一定要這樣說,才顯的嚴謹、有水平。所以以後出書的時候要記得啊)。首先,它們的程式在不同程度上比陣列和連結串列的複雜;其次,雜湊表要求預先知道要儲存多少資料,資料對儲存空間的利用率也不是非常高。普通的二叉樹對順序的資料來說,會變成緩慢的O(N)級操作(好被啊);而平衡樹編起來顯然較為困難(對於我這種高人呢)。
摘自:《java資料結構和演算法》 圖15.1
原帖:http://hi.baidu.com/haifengjava/item/a672923e06c4b3be124b14e9
相關文章
- 【資料結構】選擇排序!!!資料結構排序
- 【資料結構】選擇排序資料結構排序
- 資料結構32:選擇排序資料結構排序
- 複習資料結構:排序(三)——選擇排序資料結構排序
- 選擇結構
- 資料結構&演算法實踐—選擇排序資料結構演算法排序
- python的選擇結構Python
- 【圖解資料結構】 一組動畫演示選擇排序圖解資料結構動畫排序
- 演算法與資料結構——選擇排序(c++)演算法資料結構排序C++
- 資料結構學習筆記-簡單選擇排序資料結構筆記排序
- 順序結構與選擇結構
- switch選擇結構使用
- C++中的選擇結構C++
- 資料結構和演算法:03.冒泡、選擇排序資料結構演算法排序
- 資料結構與演算法——排序演算法-選擇排序資料結構演算法排序
- 順序與選擇結構
- 選擇結構程式設計程式設計
- C語言-選擇結構C語言
- 選擇合適Redis資料結構,減少80%的記憶體佔用Redis資料結構記憶體
- Python(二):選擇結構與迴圈結構Python
- 企業薪酬結構的選擇方法薦
- JavaScript(二):選擇、迴圈結構JavaScript
- Day12-if選擇結構
- 【Java基礎】03選擇結構Java
- 07C++選擇結構(1)C++
- 08C++選擇結構(2)C++
- PostgreSQL:資料庫的選擇SQL資料庫
- 演算法與資料結構系列 ( 三 ) - 選擇排序法- Select Sort演算法資料結構排序
- CSS3新增選擇器(屬性選擇器、結構偽類選擇器、偽元素選擇器)CSSS3
- 看圖輕鬆理解資料結構與演算法系列(選擇排序)資料結構演算法排序
- 一個選擇器工具。測試結構偽類選擇器方法
- web前端培訓教程中程式的順序結構及選擇結構Web前端
- switch-case選擇結構中的變數宣告變數
- 使用C#選擇資料夾、開啟資料夾、選擇檔案C#
- 如何選擇合適的雲資料庫架構與規格資料庫架構
- 第四章_選擇結構(二)
- Java入門系列-08-選擇結構Java
- 選擇結構程式設計之習題程式設計