線性表的順序表示是指用一組位址連續的儲存單元依次儲存線性表的資料元素。
隨機訪問的特性:用陣列描述順序儲存結構
由於線性表的長度不定,採取動態分配的一維陣列
type structsqlist;
線性表的幾個操作:
1,initlist(&l)
初始化構造乙個空的線性表
2,listinsert(&l,i,e)
插入元素
3,listdelete(&l,i,&e)
刪除元素,用e返回
//完整**:
#include#include#include#define list_init_size 100
#define listincrement 10
#define ok 1
#define bool char
typedef structsqlist;
int initlist_sq(sqlist *l)
bool listinsert(sqlist *l,int i, int e)
if(l->length > l->listsize)
q = &(l->elem[i-1]);
for(p=&(l->elem[l->length-1]);p>=q;--p)
*(p+1) = *p;
*q = e;
++l->length;
return ok;
}void listdelete_sq(sqlist *l,int i,int *e)
int main()
{ sqlist l;
int i,*e;
initlist_sq(&l);
for(i=1;i注:根據嚴蔚敏的《資料結構》所寫
採用c語言,課本中採用類c,引入了c++的引用,需要注意
線性表之順序表
資料結構草草學過,不過沒有認真運用過。雖然知道一些最為基本的抽象型別及一些常用操作,不過叫我把這些基本的演算法寫出來我也 是寫不出來的。因為常說資料結構 演算法是乙個程式設計師最基本的素質,所以這次認真加以複習。在複習的同時我盡量將自己學習的其他的 一些基本知識比如c 中的物件導向思想也引入進來,同...
線性表之順序表
線性表 我們都知道是一種常用的資料結構,也是歷來各種考試的重點。今天抽了一些時間把線性表做了總結。線性表是n個資料元素的乙個有限序列。用公式表示為 l a1,a2,a3,a4,an 因為線性表是乙個有限的序列,所以也如上面公式所示,它的各個元素是相繼排放的。那麼它的每個相連的兩項之間都是有乙個邏輯關...
線性表之順序表
線性表的操作 initlist l 初始化操作,建立乙個空的線性表l。listempty l 判斷線性表是否為空表,空返回true,否則返回false。clearlist l 將線性表清空。getelem l,i,e 將線性表l中的第i個位置元素值返回給e。listdelete l,i,e 刪除線性...