資料結構 筆記 線性表

2021-10-12 02:49:47 字數 2013 閱讀 3933

定義:由同型別資料元素構成有序序列的線性結構

型別名稱:list

物件集:n

(n>=

0)個元素構成的有序序列

操作集:

list makeempty()

;//初始化乙個空線性表l

elementtype findkth (

int k, list l)

;//根據位序k,返回相應元素

int find (elementtype x, list l)

;void insert (elementtype x,

int i, list l)

;//在位序i前插入乙個新元素x

void delete (

int i, list l)

;//刪除指定位序i的元素

int length (list l)

;//返回線性表長度

struct lnode

;typedef

struct lnode *list;

struct lnode l;

list ptrl:

初始化 (建立空的順序表)
list makeempty()

查詢
int find (elementtype x, list ptrl)

if(i > ptrl->last)

else

}

插入
void

insert

(elementtype x,

int i, list ptrl)

if(i<

1|| i>ptrl->last+2)

for(j = ptrl->last; j>=i=

1; j--

)}

刪除
void

delete

(int i, list ptrl)

for(j = i; j <= ptrl->last; j++

)return

;}

typedef

struct lnode *list;

struct lnode

;struct lnode l;

list ptrl;

求表長
int

length

(list ptrl)

return j;

}

查詢
list findkth

(int k,list ptrl)

if(i==k)

else

}

list find

(elementtype x, list ptrl)

return p;

}

插入
list insert

(elementtype x,

int i, list ptrl)

//插在表頭要作為單獨的情況列出來

p =findkth

(i-1

,ptrl)

;//找到第i-1個結點

if(p ==

null

)else

}

刪除
list delete

(int i, list ptrl)

}else

free

(s);

return ptrl;

p =findkth

(i-1

,ptrl);if

(p ==

null

)else

if(p->next ==

null

)else

}

內容待補充

資料結構筆記 線性表

思考 怎麼程式設計解決多項式相加問題?1.線性表概念 由同型別資料元素構成的有序序列的線性結構 1.表中元素個數稱為線性表的長度 2.線性表中沒有元素時稱為空表 3.表的起始位置稱為表頭,結束位置稱為表尾。2.線性表的adt描述 3.線性表的順序儲存實現 未測試 include using name...

資料結構筆記 線性表

資料元素的資料型別。struct seqlist seqlist sl create int maxlen void sl free seqlist slist 釋放 刪除 順序表。與sqlst create 配對。void sl makeempty seqlist slist 置為空表。intsl...

資料結構筆記 線性表

線性表篇 線性表有兩種物理儲存結構 順序儲存結構和鏈式儲存結構。線性表的順序訪問結構是最簡單以及最常用的線性表的儲存方式 我們用一段位址連續的儲存單元依次儲存線性表中的資料元素,其實就是和陣列一樣 通過佔位的方式將一定空間占有,再把相同資料元素型別的資料元素依次放到空間裡 描述順序表的屬性 1.儲存...