數據結構基礎-線性表

線性表定義

線性表是n個元素的有限序列,通常表示為a1,a2,...an。

它存在唯一的表頭和表尾,除了表頭,表中的每一個元素均只有唯一的直接前驅(前面有一個元素)。除了表尾外,表中的每一個元素均只有唯一的直接後繼(後面有一個元素)。

存儲結構

分為順序存儲和鏈式存儲。

數據結構基礎-線性表

  • 順序存儲

是用一組地址連續的存儲單元(連續的內存)依次存儲數據元素,從而使得邏輯關係相鄰的兩個元素在物理位置上也相鄰。它可以隨機存儲表中的元素,但插入和刪除需要移動大量的元素。

  • 鏈式存儲

是用結點(包括數據域和指針域)來存儲數據,結點的連續性不做要求,可以連續,也可以不連續 ,因此也需要存儲元素的邏輯關係。結點所需要的空間需要的時候再申請,無需事先分配.插入和刪除操作不需要移動元素,但因為存儲了元素的邏輯關係,所以需要更多的空間,不能隨機訪問元素,必須根據結點存儲的邏輯關係,逐步查找。

單鏈表:也叫線性鏈表,每個結點只有一個指針。

雙向鏈表:每個結點包含兩個指針,指明直接前驅結點和後繼結點。

循環鏈表:表尾結點的指針指向表中第一個結點。

靜態鏈表:用數組來描述線性表的鏈式存儲結構。


分享到:


相關文章: