//鏈式棧的實現(類似與單鏈表)
#include #include //定義資料型別
typedef int datatype_t;
//定義結構體
typedef struct nodelinkstack_t;
//建立乙個空的棧
linkstack_t *linkstack_create()
//判斷棧是否為空
int linkstack_empty(linkstack_t *s)
//入棧(壓棧)(單鏈表的頭插法)
int linkstack_push(linkstack_t *s, datatype_t value)
//列印資料
int linkstack_show(linkstack_t *s)
putchar(10);
return 0;
}//出棧(彈棧) (類似與單鏈表的頭刪法)
datatype_t linkstack_pop(linkstack_t *s)
temp = s->next;
s->next = temp->next;
value = temp->data;
free(temp);
temp = null;
return value;
}int main(int argc, const char *argv)
《資料結構 棧》鏈式儲存
一 鏈式儲存 和 順序結構 對比?棧的 順序結構 與 鏈結構,他們在時間複雜度上都一樣,都為o 1 如果棧的數量可預知,則使用順序棧,否則,則使用鏈棧 鏈棧 要求每個元素都有指標域,增加了記憶體開銷,但對於長度無限制。二 棧 鏈式結構 棧的 順序結構 與 鏈結構,他們在時間複雜度上都一樣,都為o 1...
資料結構 棧 棧的鏈式儲存結構
資料結構 棧 棧的鏈式儲存結構 用頭插法建立的鏈棧,棧頂元素為s next所指結點 date 2017 4 14 include include define initsize 100 define elemtype char typedef struct lnode linkstack void ...
資料結構 棧的鏈式儲存
目標效果 stack.h頁面 ifndef stack h included define stack h included ifndef elemtype define elemtype int 資料元素型別預設為 int define elemtype tag endif 鏈棧的儲存結構定義 t...