線性表是n個型別相同資料元素的有限序列,對n>0,除第乙個元素無直接前驅,最後乙個元素沒有直接後繼外,其他都是每個元素有乙個直接前驅和直接後繼,而且是一對一的關係。
線性表:順序儲存,鏈式儲存。
(1) 按內容查詢:
#include #include #include #define ok 1
#define error 0
#define true 1
#define false 0
#define elemtype int
#define maxsize 100 /*此處的巨集定義常量表示線性表可能達到的最大長度*/
typedef struct
seqlist;
int locate(seqlist l, elemtype e)
void main()
printf("請輸入要查詢的元素值:\n");
scanf("%d",&q);
p=locate(l,q);
if(p == -1)
printf("在此線性表中沒有該元素!\n");
else
}
(2)插入操作:
將原表中位置n,n-1...i..上的結點,依次後移到位置n+1,n,n-1...i...的位置。空出i的位置,將元素e插入。
#define ok 1
#define error 0
int inslist(seqlist *l,elentype e)
if(l->last>=maxsize-1)
for(k=l->last;k>=i-1;k--)
}
(3)刪除操作:
將原表中位置i+1,i+2..n上的結點,依次前移到位置i,i+1
...n的位置,將元素e刪除。
int delllist(seqlist *l,int i,elemtype *e)
*e=l->elem[i-1];
for(k=i;i<=l->last;k++)
l->elem[k-1]=l->elem[k];
l->last--;
return (ok);
}
線性表的順序儲存 線性表的順序儲存結構
1,本文實現乙個線性表 2,順序儲存定義 1,線性表的順序儲存結構,指的是用一段位址連續的儲存單元依次儲存線性表中的資料元素 2,在 c 中可以用乙個陣列作為介質來儲存資料元素 3,設計思路 1,可以用一維陣列實現順序儲存結構 1,儲存空間 t m array 2,當前長度 int m length...
線性表順序儲存
線性表順序儲存結構的建立 插入結點 刪除結點 就地逆置。include stdio.h include malloc.h typedef struct slist,list void init list 線性表初始化 void insert list s,int p 線性表插入 void delet...
線性表順序儲存
時間複雜度效率 o 1 o logn o n o nlogn o n 2 o n 3 o 2 n o n o n n 線性表順序儲存 線性表 順序儲存 include include define maxsize 1024 typedef int elementtype typedef struct...