順序表的建立與運算

2021-06-01 02:47:33 字數 1369 閱讀 2143

順序表的建立

對於不少初學資料結構的人來說,理解資料的處理和儲存方式還是比較簡單的,但是真正的問題在於資料結構中對資料處理的諸多函式的實現上,所以我在此將資料結構中重要的又是基礎的各種表和圖的建立和運算的函式總結出來,以供初學者使用。

今天講得是順序表,所謂的順序表其實就是線性表依據儲存結構的不同而命名的。線性表依據儲存結構的不同可以分為線性表和鍊錶。線性表是指其物理儲存結構和邏輯儲存結構是一致的,即邏輯相鄰在物理儲存上也是相鄰的。(鍊錶下章在講)線性表的優點是占用最少的儲存空間,因為不需要儲存各個資料元素之間的關係。其缺點是插入和刪除時要移動後面大量元素。

順序表是用c中的陣列來實現的。

注意:以下程式是在vc 6.0上實現的;如果進行相應的程式實現請自行加入iostream.h和stdlib.h等標頭檔案。

順序表結構的定義

#define maxnum 100

typedef int datatype; //datatype可以代指多種資料型別,如char,int,float等

typedef struct

seplist;

置空表

void seplsetnull(seplist *l)

取結點,即取出第i個位置的結點值

datatype seplget(seplist *l,int i)

定位乙個結點,即確定值x在順序表中的位置

int sepllocate(seplist *l,int x)

插入結點,即在第i處插入值x

int seplinsert(seplist *l,int i,int x)  

return ok;

}

刪除第i處的結點

int sepldelete(seplist *l,int i)  

return ok;

}

建立順序表

void seplcreate(seplist *l)  

}

輸出順序表

void seplprint(seplist *l) {

int j;

if (l->last<0)

{cout<<"此為空表"coutcout<

以上是關於順序表的基本運算的一些相關函式(不包含主函式)。如果初學者想要進行函式的實現測試可以自行新增main函式,只需呼叫以上操作函式即可。

順序表的建立

定義 資料結構是相互之間存在一種或多種特定關係的資料元素的集合。根據資料元素之間關係的不同特性,通常有如下4類基本結構 順序表的特徵是,在記憶體中占用連續的儲存單元,可以簡單的理解為順序表就是陣列。只是根據需要,在實際應用中動態分配順序表占用的記憶體單元。而陣列是在編譯的時候,預分配了指定大小的記憶...

順序表的建立

下標法 1 include 2 include 3 include 4 include 5 define error 0 6 define ok 1 7 define maxsize 1000000 8using namespace std 9 typedef int status 10 typed...

順序表的建立插入與刪除

順序表的建立插入與刪除 坑爹的資料結構課,在加上坑爹的資料結構老師,將來的資料結構之路想必不會順暢吧 好吧,閒話不多說。這該死的資料結構課上都沒怎麼聽,哎我以為我 苦學 一寒假的鍊錶,最開始的資料結構應該無壓力吧,沒想到第二週的作業就讓我懵逼了。我再一看老師給出的部分原始碼,要自己補充完整的。心裡有...