1、基于存儲的考慮
順序表的存儲空間是靜态分配的,在程序執行之前必須明确規定它的存儲規模,事先對“MAXSIZE”要有合适的設定,。如果對線性表的長度或存儲規模難以估計時,不宜采用順序表;鍊表不用事先估計存儲規模,但鍊表的存儲密度較低。
2、基于操作的考慮
在順序表中按序号訪問元素的時間性能為O(1),而鍊表中按序号訪問的時間性能是O(n),所以如果經常做的運算是按序号訪問數據元素,顯然順序表優于鍊表;在鍊表中作插入、删除,也要找插入位置,但是比較操作,顯然鍊表較優。
3、基于開發的語言考慮
順序表容易實現,任何高級語言中都有數組類型,鍊表的操作是基于指針的,有些語言不支持指針類型,并且相對指針來講順序表較簡單。總之,兩種存儲結構各有長短,選擇那一種存儲方式應由實際問題決定。通常“較穩定”的線性表選擇順序存儲,而頻繁做插入删除的即動态性較強的線性表宜選擇鍊式存儲。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!