線性表定義
線性表是n個元素的有限序列,通常表示為a1,a2,...an。
它存在唯一的表頭和表尾,除了表頭,表中的每一個元素均只有唯一的直接前驅(前面有一個元素)。除了表尾外,表中的每一個元素均只有唯一的直接後繼(後面有一個元素)。
存儲結構
分為順序存儲和鏈式存儲。
- 順序存儲
是用一組地址連續的存儲單元(連續的內存)依次存儲數據元素,從而使得邏輯關係相鄰的兩個元素在物理位置上也相鄰。它可以隨機存儲表中的元素,但插入和刪除需要移動大量的元素。
- 鏈式存儲
是用結點(包括數據域和指針域)來存儲數據,結點的連續性不做要求,可以連續,也可以不連續 ,因此也需要存儲元素的邏輯關係。結點所需要的空間需要的時候再申請,無需事先分配.插入和刪除操作不需要移動元素,但因為存儲了元素的邏輯關係,所以需要更多的空間,不能隨機訪問元素,必須根據結點存儲的邏輯關係,逐步查找。
單鏈表:也叫線性鏈表,每個結點只有一個指針。
雙向鏈表:每個結點包含兩個指針,指明直接前驅結點和後繼結點。
循環鏈表:表尾結點的指針指向表中第一個結點。
靜態鏈表:用數組來描述線性表的鏈式存儲結構。
閱讀更多 技術日常 的文章