靜態順序表和動態順序表 對比

2021-07-25 17:42:20 字數 1730 閱讀 4232

靜態順序表顯然就是裡面的記憶體是一定的,不能改變的,所以定義的時候可以定義乙個巨集,然後定義乙個陣列,這樣就可以在陣列中儲存資訊,而且,還可以隨時改變陣列的大小。

不過,這樣的情況不安全,因為,每個人都可以改變的陣列的大小,這是巨集定義的缺陷,也是靜態順序表的缺陷。

下面是順序表的各種功能實現:

標頭檔案:

#include 

#include

#include

#include

typedef

int datatype;

typedef

unsigned size_t;

typedef

struct seqlist_d seqlist_d;

void initseqlist_d(seqlist_d* pseq_d); //初始化函式

int isfullcapacity(seqlist_d* pseq_d); //判滿函式

int isemptycapacity(seqlist_d* pseq_d); //判空函式

void pushback(seqlist_d* pseq_d,datatype data);//尾插函式

void popback(seqlist_d* pseq_d); //尾刪函式

void printseq(seqlist_d* pseq_d); //列印函式

函式部分:

#include "seqlist_d.h"  

void initseqlist_d(seqlist_d* pseq_d)

void pushback(seqlist_d* pseq_d,datatype data)

pseq_d->array[pseq_d->size++] = data;

}int isfullcapacity(seqlist_d* pseq_d)

else

}int isemptycapacity(seqlist_d* pseq_d)

else

return

0;

} void popback(seqlist_d* pseq_d)

else

} void printseq(seqlist_d* pseq_d)

}

測試函式:

#include "seqlist_d.h"  

void text1()

int main()

{ text1();

system("pause");

return 0;

靜態順序表

在書上看到的,學習學習。題目 建立乙個靜態的順序表存放整數,大小為10,完成以下操作。1 輸入6個整數,列印出順序表中的內容,並顯示表中的剩餘的空間個數。2 在順序表中的第3個位置插入元素0,列印出順序表中的內容,並顯示表中剩餘的空間個數。3 再試圖插入表中第11個位置整數0,程式提示超出範圍。4 ...

靜態順序表

最近在學習資料結構的單鏈表部分,於是寫了乙個靜態順序表做練習。實現了對其初始化 新增 更改 刪除等功能的實現。seqlist.h pragma once define seq list ifdef seq list include include include define maxsize 100...

靜態順序表

順序表是在計算機記憶體中以陣列的形式儲存的線性表,是指用一組位址連續的儲存單元依次儲存資料元素的線性結構。線性表採用順序儲存的方式儲存就稱之為順序表。順序表是將表中的結點依次存放在計算機記憶體中一組位址連續的儲存單元中。include stdio.h include stdlib.h elemtyp...