這段時間開始學習軟考裡面的內容,對順序表和煉表,比較著學習理解的更多了,跟大家分享一下。
、儲存密度:
順序表儲存乙個資料用乙個空間;而鏈式儲存,儲存資料的同時還要儲存指標,此時用鏈式表儲存資料要用兩個空間。所以,儲存密度(資料的密度)上,順序儲存更優;
2
、容量分配:
我們使用的陣列採用順序儲存的方式,在使用之前,會先定義陣列的容量,比如:intarray= new int[10]
;而鏈式儲存,可以動態新增,需要時再新增,用指標指向新新增的資料。
1
、插入和刪除
鏈式儲存中
刪除和插入節點影響的量只有乙個節點,刪除節點,前驅節點用指標直接指向後繼節點;插入節點,把插入節點的後繼節點指向插入節點的位置,前驅節點再用指標直接指向插入節點,只需要1
的時間複雜度。
順序儲存刪除某個節點後,還要把後面的節點前移(除了刪除最後乙個)。插入時要把節點後移(除了插到最後)。鏈式儲存的時間複雜度優於順序儲存;
2
、查詢鏈式和順序儲存相同,都是使用順序查詢,從第乙個元素開始,依次向後查詢,消耗的時間相同。但如果順序表的資料按從小到大的順序排列,使用二分查詢法,效率會提高;
3
、讀運算
順序表:隨機訪問;
鍊錶:從第乙個元素開始,
next
——>next…
查到最後,最好的情況是,需要的元素在第乙個位置,時間複雜度是1。最壞的情況是,需要的元素在最後乙個位置,時間複雜度是n。
再次學習軟考的內容,理解的更多了些,如果有歧義的地方,希望大家指出,幫小蝦公尺度過難關。
順序表和煉表的比較
順序表和煉表的比較,訪問方式,順序表可以順序儲存,也可以隨機訪問,鍊錶只可以從表頭順序訪問元素。邏輯結構和物理結構,採用順序儲存時,邏輯上相鄰的的元素,其對應的物理儲存位置也相鄰,而採用鏈式儲存的時候,邏輯上相鄰的元素,其物理儲存位置不一定相鄰,其對應的邏輯關係是通過指標鏈結來表示的。查詢和刪除的操...
順序表和煉表的比較
順序表和煉表是線性表的兩個分類,其中,邏輯順序和物理順序相同為順序表,不同為鍊錶。下面從以下方面對比一下兩者的異同點。順序表單鍊錶 訪問方式 順序訪問和隨機訪問 順序訪問,通過相鄰表示邏輯關係 邏輯結構和物理結構 邏輯和物理都相鄰 邏輯相鄰,物理不一定相鄰,通過指標表示邏輯關係 基本操作 1 插入 ...
順序表和煉表的比較
通常從空間效能和時間效能兩個方面比較分析 1.空間效能的比較 線性表長度變化大,難以預估儲存規模,用鍊錶 線性表長度變化不大,能事先確定儲存大小,用順序表 a.儲存空間的分配 順序表的儲存空間必須預先分配,元素個數擴充受限,易造成儲存空間浪費或空間溢位現象 鍊錶無需預先分配空間,記憶體空間允許時,元...