線性表(2) 順序表

2021-08-14 08:32:59 字數 881 閱讀 8397

#include#include#define init_size 100//初始長度 

#define listincrement//增量

#define elemtype int

#define error 0

#define ok 1

typedef structsqlist;

//構造空表

int initlist_sq(sqlist &l)

l.length=0;

l.listsize=init_size;

return ok;

}//插入元素

int insert_sq(sqlist &l,int i,elemtype e)//第i個位置插入e

if(l.length>=l.listsize)//當前儲存空間已滿,增加分配

//插入位置後的元素後移乙個單位

int *p,*q;

q=&l.elem[i-1]; //第i個元素的儲存位置為l.elem[i-1]

for(p=&l.elem[l.length-1];p>q;p--) *(p+1)=*p;

*q=e;//插入e

l.length+=1;//表長加一

return ok;

} //刪除元素,並返回

int listdelete_sq(sqlist &l,int i)

int *q,*p;

p=&l.elem[i-1];

for(q=&l.elem[l.length-1];p執行結果:

2 線性表之順序表

線性表是某類元素的乙個集合,還記錄著元素之間的一種順序關係。順序表 將元素順序地存放在一塊連續的儲存區里,元素間的順序關係由它們的儲存順序自然表示。順序表的資料元素本身連續儲存,每個元素所佔的儲存單元大小固定相同,元素的下標是其邏輯位址,而元素儲存的實體地址 實際記憶體位址 可以通過儲存區的起始位址...

線性表 順序表

1 線性表 線性表是最基本 最簡單 也是最常用的一種資料結構。線性表中資料元素之間的關係是一對一的關係,即除了第乙個和最後乙個資料元素之外,其它資料元素都是首尾相接的。線性表的邏輯結構簡單,便於實現和操作。因此,線性表這種資料結構在實際應用中是廣泛採用的一種資料結構。線性表 list,零個或多個資料...

線性表 順序表

線性結構的特點是 在非空的有限集合中,只有唯一的第乙個元素和唯一的最後乙個元素。第乙個元素沒有直接前驅元素,最後乙個沒有直接的後繼元素。其它元素都有唯一的前驅元素和唯一的後繼元素。要想將線性表在計算機上實現,必須把其邏輯結構轉化為計算機可識別的儲存結構。線性表的儲存結構主要有兩種 順序儲存結構和鏈式...