**
線性表是具有n個相同型別元素的有序序列,線性表是最基本、最簡單、也是最常用的一種資料結構。線性表(linear list)是資料結構的一種,乙個線性表是n個具有相同特性的資料元素的有限序列。線性表中資料元素之間的關係是一對一的關係,即除了第乙個和最後乙個資料元素之外,其它資料元素都是首尾相接的(注意,這句話只適用大部分線性表,而不是全部。比如,迴圈鍊錶邏輯層次上也是一種線性表(儲存層次上屬於鏈式儲存,但是把最後乙個資料元素的尾指標指向了首位結點)。
線性結構
常見的線性表有:陣列,鍊錶,棧,佇列,雜湊表
a1是首節點
an是尾節點
a1是a2的前驅
a2是a1的後繼
前驅後繼與直接前驅直接後繼的區別
如用(a1,…,ai-1,ai,ai+1,…,an)表示乙個順序表,則表中ai-1領先於ai,ai領先於ai+1,稱ai-1是ai的直接前驅元素,ai+1是ai的直接後繼元素。當i=1,2,…,n-1時,ai有且僅有乙個直接後繼,當i=2,3,…,n時,ai有且僅有乙個直接前驅 [1] 。
如果資料元素本身包含的資料項非常多,就可以稱這個資料元素為乙個「記錄」,多條記錄組成乙個「檔案」。
儲存的資料本身的型別一定保持相同,是int型就都是int型,是結構體就都是一種結構體。
資料一旦用線性表儲存,各個資料元素之間的相對位置就固定了。
相對位置,指的是各資料元素在邏輯結構上的前後次序。
之前講過,邏輯結構上相鄰的資料在實際的物理儲存中有兩種形式:分散儲存和集中儲存。
考慮到這兩種情況,線性表分為兩種,分別解決兩種情況下資料的儲存問題:
資料元素在記憶體中集中儲存,採用順序表示結構,簡稱「順序儲存」;
資料元素在記憶體中分散儲存,採用鏈式表示結構,簡稱「鏈式儲存」。
上面這些都是有相同特徵的「有序列」
資料結構與演算法導論2 線性表
define maxsize 20 typedef int elemtype typedef struct sqlist 總結下,順序儲存結構封裝需要三個屬性 儲存空間的起始位置,陣列data,它的儲存位置就是線性表儲存空間的儲存位置。線性表的最大儲存容量 陣列的長度maxsize。線性表的當前長度...
資料結構 線性表 2
package com.wjy.data structure.linearlist.common public inte ce nodepackage com.wjy.data structure.linearlist.common 單鏈表結點定義 public class slnode imple...
資料結構2 線性表
什麼是線性表 邏輯上具有線性結構的儲存結構 線性表的特點 線性表中每個元素型別相同 線性表分類 根據物理結構,分為順序儲存和鏈式儲存 順序儲存 順序表 順序表的特點 快速隨機訪問,查詢和修改效率高,增刪效率低 順序表的實現 1 定義順序表頭,2 順序表初始化,3 實現順序表的操作 順序表的操作 增加...