線性表是一種最常用,最簡單的一種資料結構。它是n個資料元素的有限序列。n 為線性表的長度,當 n = 0 時,表明該線性表為空表。
線性表中存在唯一乙個被稱為「第乙個」的資料元素。線性表中存在唯一乙個被稱為「最後乙個」的資料元素。
線性表中除第乙個元素外,每乙個元素均有乙個直接前驅。
線性表中除最後乙個元素外,每乙個元素均有乙個直接後繼。
線性表的順序儲存線性表的順序表示是指線性表中的資料元素依次存放在連續的位址連續的記憶體空間中。由其名稱中的「 順序 」 便可理解。
線性表的順序儲存結構的特點是:邏輯關係上相鄰的兩個資料元素在物理位置上也相鄰。
缺點: 執行插入 或 刪除操作時,需要大量移動資料。
線性表的鏈式儲存
鏈式儲存是指: 用一組任意的儲存單元儲存線性表的資料元素,這組資料單元可以是連續的,也可以是不連續的。
特點: 不要求邏輯上相鄰的資料元素在物理位置上也相鄰。
缺點: 隨機訪問比較麻煩。
1. void initlist(&s) ; //初始化線性表
2. int destroylist (&s); //銷毀線性表
3. int clearlist(&s); //清空線性表
4. int listlength(&s); //返回鍊錶的長度
5. int listempty(&s); //鍊錶為空返回1,否則返回0
6. listdata getelem(&s,int i); //返回第i 個資料元素
7. listdata priorelem (&s,listdata x); //返回資料元素x的直接前驅
8. int locateelem(&s,listdata x); //返回資料元素x 在鍊錶中的位置
9. listdata nextelem(&s,listdata x); //返回資料元素x的直接後繼
10. int listinsert (&s,listdata x,int i); //在鍊錶第i 個元素之前插入x;
11. int listdelete (&s,int i); //刪除第i個資料元素
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...