線性表順序儲存的各項操作的實現

2021-07-04 05:03:20 字數 1298 閱讀 8622

該文中主要採用順序儲存來完成對線性表的各項操作,通過動態分配的一維陣列來實現,主要包括初始化、插入、刪除、取第i個資料元素、定位、銷毀、合併兩個有序表以及在有序表中新增元素依舊保持其有序。

#include 

#include

#include

#define ok 1

#define error 0

#define overflow -1

#define list_init_size 100

#define listincrement 10

typedef int elemtype;

typedef int status;

typedef struct sqlist

sqlist;

status initlist(sqlist *l)//初始化

status destroylist(sqlist *l)//銷毀表

printf("destroy list\n");

return ok;

}status listinsert(sqlist *l,int i, elemtype e)//插入

elemtype *q =&(l->elem[i-1]);

elemtype *p;

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

*q=e;

++l->length;

return ok;

}void icreaseinsert(sqlist *l, elemtype e)//l有序遞增,將e插入依舊保持遞增

else

if(e>=l->elem[i]&&e<=l->elem[i+1])

}}status listdelete(sqlist *l,int i, elemtype e)//刪除

int getelement(sqlist *l,int i)//獲取第i個位置上的元素

int locateelem(sqlist *l, elemtype e)//定位元素e

void unionlist(sqlist *la,sqlist *lb, sqlist *l)//合併兩個有序表

else

if(la->elem[i]>lb->elem[j])

}l->length=k;

}void printlist(sqlist *l)//列印

printf("\n");

}int main()

}return

0;}

順序儲存結構線性表的各項操作

include define maxsize 20 define ok 1 define error 0 define true 1 define false 0 using namespace std typedef int elemtype typedef int status typedef ...

線性表的順序儲存實現

seqlist.h標頭檔案 1 線性表的順序儲存實現 2 3 ifndef seqlist h include 4 define seqlist h include 5 6 include 7 include 8 include 9 10 typedef int elementtype 11 def...

線性表的順序儲存 線性表的順序儲存結構

1,本文實現乙個線性表 2,順序儲存定義 1,線性表的順序儲存結構,指的是用一段位址連續的儲存單元依次儲存線性表中的資料元素 2,在 c 中可以用乙個陣列作為介質來儲存資料元素 3,設計思路 1,可以用一維陣列實現順序儲存結構 1,儲存空間 t m array 2,當前長度 int m length...