資料結構 順序表基本操作的實現

2021-10-23 13:08:48 字數 2624 閱讀 5469

//實現陣列的以下操作,並編寫程式驗證你的操作。

int inputlist(seqlist *l,int n); //輸入n個整數存放到陣列中

int printlist(seqlist *l); //輸出陣列中的所有元素

int locate(seqlist *l,elemtype e); //在陣列l中查詢e,返回找到的下標,否則返回-1

int inslist(seqlist *l,int i,elemtype e); //在陣列l中下標為i的位置上插入元素e

int *dellist(seqlist *l,int i); //在陣列l中刪除下標為i的位置上的元素,用e返回刪除元素的值

void merge(seqlist *la, seqlist *lb, seqlist *lc); //將兩個有序陣列la,lb 合併成乙個陣列lc。

**如下:

#include

#include

#define maxsize 20

//陣列的最大長度;

typedef

int elemtype;

typedef

struct

seqlist;

seqlist list;

seqlist la,lb,lc;

//定義線性表陣列

//實現陣列的以下操作,並編寫程式驗證你的操作。

intinputlist

(seqlist *l,

int n)

;//輸入n個整數存放到陣列中

intprintlist

(seqlist *l)

;//輸出陣列中的所有元素

intlocate

(seqlist *l,elemtype e)

;//在陣列l中查詢e,返回找到的下標,否則返回-1

intinslist

(seqlist *l,

int i,elemtype e)

;//在陣列l中下標為i的位置上插入元素e

int*

dellist

(seqlist *l,

int*i)

;//在陣列l中刪除下標為i的位置上的元素,用*e返回刪除元素的值

void

merge

(seqlist *la, seqlist *lb, seqlist *lc)

;//將兩個有序陣列la,lb 合併成乙個陣列lc。

intinputlist

(seqlist *l,

int n)

//函式作用為輸入n個整數存放到陣列中

}int

printlist

(seqlist *l)

//函式作用為列印每個陣列的全部元素

printf

("\n");

}int

locate

(seqlist *l,elemtype e)

//函式作用為查詢值e所在陣列的下標位置

if(i>l-

>last)

//遍歷陣列後未發現值等於e返回-1

return-1

;else

return i;

//找到就返回所在陣列下標

}int

inslist

(seqlist *l,

int i,elemtype e)

//函式作用為插入乙個數進製置i

if(i>l-

>last)

//如果插入位置為最後乙個就插到最後乙個

else

//插入位置不為最後乙個

l->elem[i]

=e; l-

>last++

;//插入元素陣列的最後l->last更換 }}

int*

dellist

(seqlist *l,

int*i)

//函式作用刪除位置為i的元素,i用指標原因將i傳出函式

*i=k;

//將最後一次輸入的合法的i賦值給*i,便於主函式的輸出i

int j;

*e=l-

>elem[k]

;//儲存刪除元素,最後返回用e返回

for(j=k+

1;j<=l-

>last;j++

) l-

>last--

;//改變l->last的值

return e;

//返回刪除元素

}void

merge

(seqlist *la, seqlist *lb, seqlist *lc)

//函式作用為合併倆陣列

else}if

(i>la-

>last)

//如果陣列l->a比l->b長度短就將l->b剩下的元素插入l->c中

}else

//如果陣列l->a比l->b長度長就將l->a剩下的元素插入l->c中

} lc-

>last=k-1;

//更新lc->last的值

}int

main()

順序表基本操作的實現(資料結構)

建立具有10個元素的順序表,並能對該錶進行查詢,插入,刪除等基本操作 cpp檔案字尾名 include include define maxsize 50 typedef int elemtype 線性表的順序儲存方式 typedef struct sqlist 建立順序表 void createl...

資料結構 順序表的基本操作

計算機中線性表的存放結構主要有兩種 順序儲存結構和鏈式儲存結構。採用前者存放方式的線性表是順序表,採用後者的就是我們平時所說的鍊錶 線性鍊錶 這裡先對順序表的一些基本操作進行歸納和總結,鍊錶的將在後面的文章中歸納總結。順序表的表示,一般都是借助一維陣列。c 語言定義其結構如下 const int m...

資料結構 順序表的基本操作

main include include define true 1 define error 0 define ok 1 define false 0 define overflow 2 typedef int status typedef int elemtype define list ini...