2020春資料結構 線性表

2021-10-03 22:29:39 字數 1337 閱讀 5412

#include

#define ll long long

#define endl '\n'

#define io ios::sync_with_stdio(false);cin.tie(0);

using

namespace std;

const

int maxn=

1e3+5;

int a[maxn]

;typedef

struct

seqlist;

//建立線性表

void

create

(seqlist *

&l,int a,

int n)

l->length=n;

}//列印線性表

void

printlist

(seqlist *

&l) cout<}//在順序表l中查詢與e相等的元素

intlocate

(seqlist *

&l,int e)

if(i<=l-

>length)

return i+1;

else

return-1

;}//在順序表l中第i個元素之前插入乙個元素e

intinslist

(seqlist *

&l,int i,

int e)

if(l-

>length>=maxn-1)

for(k=l-

>length;k>=i-

1;k--

) l-

>data[i-1]

=e; l-

>length++;}

//在順序表l中刪除第i個元素

intdellist

(seqlist *

&l,int i)

for(k=i;k<=l-

>length;k++

) l-

>length--;}

//合併順序表

void

merge

(seqlist *

&la,seqlist *

&lb,seqlist *

&lc)

else

}while

(i<=la-

>length-1)

while

(j<=lb-

>length-1)

lc->length=la-

>length+lb-

>length;

}int

main()

2020資料結構 線性表(1)

2.1線性表的定義 線性表是一種簡單的線性結構,具有如下特徵 1 集合中必須存在唯一的乙個第乙個元素。2 集合中必須存在唯一的乙個最後乙個元素。3 除最後乙個元素外均有乙個唯一的直接後繼。4 除第乙個元素外,均有唯一的直接前驅。2.2線性表的儲存結構和基本操作的實現 2.2.1順序儲存 用一組連續的...

2020資料結構 線性表(4)

2.4.1單向迴圈鍊錶 在單向鍊錶的基礎上,在其最後乙個結點的指標域中將空指標改為指向頭結點的指標,此即為單項迴圈鍊錶。常用的單項迴圈鍊錶有兩種,一種是帶頭指標的單項迴圈鍊錶,另一種是帶尾指標的單項迴圈鍊錶。帶頭指標的單項迴圈鍊錶判斷為空的條件 l next l 帶尾指標的單項迴圈鍊錶的判斷為空的標...

資料結構(線性表)

1.試寫一演算法,在無頭結點的動態單鏈表上實現線性表操作insert l,i,b 並和在帶頭結點的動態單鏈表上實現相同操作的演算法進行比較。status insert linklist l,int i,int b 在無頭結點鍊錶l的第 i個元素之前插入元素 belse insert 2.已知線性表中...