DS線性表的順序儲存 順序表 靜態陣列 動態分配

2021-10-22 09:30:59 字數 1658 閱讀 3169

線性表的基本操作:

initlist(&l):初始化表,構造1個空的線性表

listinsert(&l,i,e):插入操作,在表l的第i個位置插入指定元素e

listdelete(&l,i,&e):刪除操作,刪除表中第i個位置的元素,並用e返回刪除元素的值

getelem(l,i):按位查詢操作,獲取表中第i個位置上的元素的值

locateelem(l,e):安置查詢操作,在表l中查詢具有給定關鍵字值得元素

printlist(l):輸出操作,按前後順序輸出線性表l的所有元素值

線性表的順序表示:(順序表)

1.靜態陣列

#include

using namespace std;

intconst maxsize =

100;

struct sqlist

;void

initlist

(sqlist &l)

l.length =0;

}bool listinsert

(sqlist& l,

int i,

int e)

//* l.data[i -1]

= e;

l.length++

;return true;

}int

getelem

(sqlist l,

int i)

intlocateelem

(sqlist l,

int e)

return false;

}void

printlist

(sqlist& l)

bool listdelete

(sqlist &l,

int i,

int&e)

l.length--

;return true;

}int

main()

/*[0

]:4[

1]:1

[2]:

1122

411the value of del:41

1*/

2.動態分配malloc

#include

using namespace std;

intconst initsize =10;

struct sqlist

;void

initlist

(sqlist& l)

void

increasesize

(sqlist& l,

int len)

l.maxsize +

= len;

free

(p);

}//......

intmain()

/*[0

]:4[

1]:1

[2]:

1122

411the value of del:41

1len1:

2max1:

10len2:

2max2:15*

/

線性表的順序儲存 順序表

一丶順序表 概念 採用順序儲存的線性表稱為順序表,順序表中邏輯上相鄰的資料元素在物理儲存位置上也是相鄰的。二丶定義順序表 用一維陣列來描述順序表的資料儲存。由於順序表有插入刪除等操作,即順序表的表長會發生改變。因此是陣列長度足夠大,加入整型變數length來記錄此時線性表中資料元素的個數,順序表的結...

線性表的順序儲存 順序表

線性表,簡稱表,是n n 0 個具有相同型別的資料元素的有限序列。1 線性表是乙個相當靈活的資料結構,對線性表的資料元素不僅可以進行訪問訪問,還可以進行插入和刪除等操作。2 a1稱為第1個元素,an稱為最後乙個元素,任意一對相鄰的資料元素a i 1 和a i 1序偶關係 且a i 1 稱為a i 的...

線性表的順序儲存 順序表

線性表可以按照其儲存結構劃分為順序表 鍊錶。如下圖 順序表 順序表的描述 1 陣列靜態分配 define maxsize 30 typedef int elemtype typedef structsqlist 2 陣列動態分配 define maxsize 30 typedef int elemt...