C語言實現順序表

2021-09-12 10:40:47 字數 2368 閱讀 7499

最近複習了一下資料結構對順序表進行一下複習!

#include//函式結果狀態** 

#define true 1

#define false 0

#define ok 1

#define error 0

#define overflow -2

//status 是函式的型別,其值是函式結果狀態**

typedef int status;

#define nmax 100

typedef int elemtype; //定義元素型別

typedef struct sqlistsqlist, *psqlist;

//定義函式

status initlist(psqlist &l); //初始化

status destroylist(psqlist &l); //銷毀

int lengthlist(psqlist l); //求長度

status listempty(psqlist l); //判斷表空

int locateelem(psqlist l, elemtype e); //按元素值查詢

status displaylist(psqlist l); //輸出表

status getelem(psqlist l, int i, elemtype &e); //求某個資料元素值

//status getelem(psqlist l, int i, elemtype *e); 一樣的

status listinsert(psqlist &l, int i, elemtype e); //插入資料元素

status listdelete(psqlist &l, int i, elemtype &e); //刪除資料元素

status initlist(psqlist &l)

status destroylist(psqlist &l)

int lengthlist(psqlist l)

status listempty(psqlist l)

int locateelem(psqlist l, elemtype e)

if(i > l->length)

return error;

return i;

}status displaylist(psqlist l)

printf("\n");

return ok;

}status getelem(psqlist l, int i, elemtype &e)

status listinsert(psqlist &l, int i, elemtype e)

l->elements[i] = e; //插入元素

l->length++; //表長度加 1

return ok;

}status listdelete(psqlist &l, int i, elemtype &e)

l->length--;

return ok;

}

int main()

printf("表長:%d\n",lengthlist(pl));

listempty(pl) == 1?printf("表空\n"):printf("表不空\n");

printf("輸出順序表:\n");

displaylist(pl);

printf("在第1位插入9,10位插入數字99,51位插入999\n");

listinsert(pl, 1, 9);

listinsert(pl, 10, 99);

listinsert(pl, 51, 999);

printf("輸出順序表:\n");

printf("表長:%d\n",lengthlist(pl));

displaylist(pl);

printf("\n刪除第51位,刪除第10位,刪除第1位\n");

listdelete(pl, 51, e);

listdelete(pl, 10, e);

listdelete(pl, 1, e);

printf("表長:%d\n",lengthlist(pl));

printf("輸出順序表:\n");

displaylist(pl);

return 0;

}

順序表的實現還是比較簡單,相對於鏈式結構還是簡單許多,我這個**基本上實現了順序表的若干操作,比較簡陋。相信只要努力,以後一定能寫出來更好的**。

C語言實現順序表

標頭檔案部分 include include include typedef int datatype define maxsize 10 typedef struct seqlist seqlist 列印順序表的內容 void printseqlist seqlist seq 初始化順序表 voi...

C語言實現順序表

順序表是在計算機記憶體中以陣列的形式儲存的線性表,是指用一組位址連續的儲存單元依次儲存資料元素的線性結構。線性表採用順序儲存的方式儲存就稱之為順序表。順序表是將表中的結點依次存放在計算機記憶體中一組位址連續的儲存單元中。這裡我用c語言實現了一下順序表的具體操作。其中用了一些c 的小語法。所以有可能不...

C語言實現順序表

使用c語言實現順序表 順序表的主要功能有 1 初始化順序表 2 順序表的頭插 3 順序表的尾插 4 順序表的頭刪 5 順序表的尾刪 6 順序表的任意點插入 7 順序表的查詢刪除 8 順序表的排序 9 清空順序表 10 列印順序表 具體 實現如下 seqlist.h include include i...