動態順序表實現

2021-10-02 22:20:27 字數 1198 閱讀 9816

這裡動態順序表使用結構體

typedef

int datatype;

typedef

struct seqlist

seqlist;

以下為提供的介面

//初始化順序表

void

seqlistinit

(seqlist* ps, size_t capacity)

;//銷毀順序表

void

seqlistdestory

(seqlist *ps)

;//檢查容量

void

checkcapacity

(seqlist* ps)

;//尾插

void

seqlistpushback

(seqlist* ps, datatype x)

;//尾刪

void

seqlistpopback

(seqlist *ps)

;//頭插

void

seqlistpushfront

(seqlist *ps, datatype x)

;//頭刪

void

seqlistpopfront

(seqlist *ps)

;//尋找位置

intseqlistfind

(seqlist* ps, datatype x)

;//插入元素

void

seqlistinsert

(seqlist* ps, size_t pos, datatype x)

;//刪除元素

void

seqlisterase

(seqlist *ps, size_t pos)

;//修改當前位置的值

void

seqlistmodify

(seqlist* ps, size_t pos, datatype x)

;//列印

void

seqlistprint

(seqlist* ps)

;

源**部分

位於碼雲上的源**

位於github上的源**

動態實現順序表

順序表是在計算機記憶體中以 陣列的形式儲存的線性表,是指用一組位址連續的 儲存單元 依次儲存 資料元素 的線性結構。線性表採用順序儲存的方式儲存就稱之為順序表。順序表是將表中的結點依次存放在計算機記憶體中一組位址連續的 儲存單元中。下面來進行順序表的動態實現 標頭檔案 ifndef seqlist ...

實現動態順序表

標頭檔案seqlist.h中 pragma once include include typedef int datatype typedef struct seqlist seqlist 列印順序表 void printseqlist seqlist pseq printf n 增大容量 void...

實現動態順序表

靜態順序表和動態順序表之間的區別就是靜態順序表的儲存大小一旦設定好之後便不能修改 顯然動態順序表採用的是動態分配記憶體,容量是可以增加的,當然動態順序表要比靜態順序表多增加乙個監測容量的引數,每當當前容量存滿的時候就要觸發擴容機制,實現動態開闢記憶體。由於兩者差別不是很大,這裡我就只實現動態順序表,...