《C語言資料結構》 順序表的簡單操作。

2021-10-23 00:09:26 字數 2099 閱讀 8418

最近一直在學資料結構,中間遇到了不少的問題,後面慢慢的都解決了。然後根據我自己的理解整理出來這篇文章,在這裡分享給大家,如有不足的地方還請指正。

由此我們可以得出,將「具有 『一對一』

邏輯關係的資料按照次序連續儲存到一整塊物理空間上」的儲存結構就是順序儲存結構。我們可以發現,順序表儲存資料同陣列非常接近。其實,順序表儲存資料使用的就是陣列。

1.順序表的初始化2. 順序表查詢元素

3. 順序表元素的刪除

4. 順序表元素的新增

5. 順序表元素的輸出

如上這些都是基本的常規操作,還有一些操作可以根據情景去實現,但萬變不離其宗。學會以上操作就能演變出別的操作。

#define maxsize 5

typedef

struct lnode *list;

//在這相當於定義了乙個結構指標型別。(list p=struct lnode *p)它們倆等效

struct lnode

;

list makeempty()

int

find

(int x,list p)

if(i>p->last)

return-1

;//返回的值i>p->last說明順序表中沒有該元素。

else

return i;

//找到該元素,返回該元素在順序表中的位置。

}

插入元素的時候一定要注意資料應該從後面開始挪動,不能夠從前面開始挪動。

void

insert

(int x,

int i,list p)

if(i<

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

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

1;j--

)//將順序表中的資料從最後乙個往後移動。

)//將順序表的元素向前移動。

}

#include

#include

#define maxsize 5

typedef

struct lnode *list;

struct lnode

;list makeempty()

intfind

(int x,list p)

if(i>p->last)

return-1

;//返回的值i>p->last說明順序表中沒有該元素。

else

return i;

//找到該元素,返回該元素在順序表中的位置。

}void

insert

(int x,

int i,list p)

if(i<

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

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

1;j--

)//將順序表中的資料從最後乙個往後移動。

p->data[i-1]

=x; p->last++;}

void

delete

(int i,list p)

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

)//將順序表的元素向前移動。

p->last--;}

intmain()

for(i=

0;i<=p->last;i++

)//列印出順序表中的元素

return0;

}

資料結構 順序表簡單操作

基於靜態陣列的順序表簡單操作 初始化 尾插 尾刪 頭插 頭刪 讀任意位置元素 修改任意位置元素 查詢指定元素值的下標 在任意位置插入元素 seqlist.h pragma once include include include include include define seqlistmax 1...

資料結構 順序表操作集(C語言)

本題要求實現順序表的操作集。list makeempty position find list l,elementtype x bool insert list l,elementtype x,position p bool delete list l,position p 其中list結構定義如下...

資料結構(C )簡單順序表

資料結構學過了模板之後就開始了線性表的學習,線性表又分為簡單的順序儲存和鏈式儲存兩種方式。兩種方法各有長短,根據不同的實際情況定義使用。是零個或多個具有相同型別的資料元素的有限序列。通常的線性表中有兩個元素,乙個是儲存的資料,另乙個是表資料的長度。線性表的順序儲存,是指用一維位址連續的儲存單元依次儲...