資料結構之線性表

2022-03-05 02:33:26 字數 818 閱讀 3336

線性表在計算機中儲存有兩種方式,一種是順序儲存方式,一種是鏈式儲存方式。順序儲存的線性表稱為順序表,而鏈式儲存的線性表稱為鍊錶。

順序儲存就是按照線性表的邏輯順序,在物理儲存(存到計算機中)的時候依次地將元素儲存到連續的位址空間中。也就是邏輯順序和物理順序相對應。我們平常使用的陣列就是順序表。

想象這樣乙個場景,某班學生手拉手地出現在操場上,他們可以橫著排、豎著排、或者曲線排,但是不影響他們是乙個佇列,也就是線性表,其中的關鍵在於「手拉手」。鍊錶就是類似的結構,除頭尾元素外的每個資料元素都能和它的直接前驅和直接後繼「手拉手」,這裡的手就好比一條鍊子,將每個元素邏輯串聯起來。

在上面的例子中,手拉手這個佇列相當於乙個鍊錶,那麼佇列中的人相當於乙個節點(node),節點又細分為資料、指標(左指標和右指標,只有右指標的又叫單鏈表

,有左右指標的叫雙鏈表

)。(好比人本身、左手和右手)。

順序表好比一排連續的座位,這些座位的物理位置和該順序表的邏輯順序是對應的,比如每個學生按學號入座。所以順序表的特點顯而易見:

(隨機訪問特性):由於是連續的,所以易查詢。

(靜態分配):順序表要求分配連續的空間,所以需要預先進行空間分配。所以順序表需要擴充套件時需要再開闢一串連續的空間。

鍊錶和順序表相對應,由於儲存位址不連續,所以不支援隨機訪問,查詢起來也就很慢,但相反地煉表支援動態分配。

mysql 線性表 資料結構之線性表

概要 參考 大話資料結構 把常用的基本資料結構梳理一下。線性表定義 線性表 list 零個或多個資料元素的有限序列。若將線性表記為 a 1,cdots,a a i,a cdots,a n 則表中 a 領先於 a i a i 領先於 a 稱 a 是 a i 的直接前驅元素,a 是 a i 的直接後繼元...

資料結構之線性表

從現在開始,我們開始討論如何實現一些常用的資料結構和其中的一些經典演算法.等把資料結構講完了.我可能會繼續討論vc 的程式設計只是以及vs平台下的c c 開發等等.呵呵.我們進入正題吧.我在這裡就只實現線性表的連表結構.當然了,這裡實際上包含了好多知識.我希望大家在引用的時候.一定要領悟裡面的一些變...

資料結構之線性表

線性表是具有相同特性的資料元素的乙個有限序列。該序列中所含元素的個數叫做線性表的長度,用n表示,n 0。當n 0時,表示線性表是乙個空表,即表中不包含任何元素。設序列中第i i表示位序 個元素為ai 1 i n 線性表的一般表示為 a1,a2,ai,ai 1,an include include d...