c語言實現的棧 鍊錶 陣列

2022-03-06 10:37:44 字數 1232 閱讀 3355

1.陣列實現的棧

#include #include #include #define maxsize 5

/***陣列實現的棧,缺點,容量固定

**/typedef structstack;

stack s;

/***入棧,成功返回1,否則0

**/int push(int e)else

return rt;

}/**

*初始化棧

*/int clear(void)

/***判斷棧是否為空

**/int isempty(void)

/***出棧,彈出棧頂元素

**/int pop(void)

return t;

}/**

*棧內元素列印

*/int displaystack(void)

s.index = p;

return 0;

}int main(void)

2.鍊錶實現

#include #include #include /**

*鍊錶實現的棧

**/typedef struct linklistlink;

typedef structstacklink;

stacklink s;

/***入棧

**/int push(int e)else

element = (link *)malloc(sizeof(link));

element->data = e;

element->pre = end;

element->next = null;

end->next = element;

end = element;

s.index ++;

s.head = end;

return 0;

}/**

*標誌位設為空

**/int clear()

/***判斷棧是否為空

**/int isempty(void)

/***出棧,彈出棧頂元素

**/int pop(void)else

return t;

}/**

*棧內元素列印

*/int displaystack(void)

s.head = t;

return 0;

}int main(void)

陣列 鍊錶 佇列和棧 佇列,C語言實現

佇列,顧名思義就是很多個資料在排隊。既然是排隊,那就不能從最前面或者中間插進去,新來的資料只能排在隊伍的最後。另外,我們另外規定只有隊伍最前面的資料才能出去。當然,其實也只有隊伍最前面的資料能被外界檢視。能滿足這種功能的資料結構稱之為佇列。我們可以用陣列 鍊錶實現佇列。這裡用陣列實現簡單佇列。申請1...

鍊錶的C語言實現

編輯 c巨集例項 以下 摘自linux核心2.6.21.5原始碼 部分 展示了鍊錶的另一種實現思路,未採用ansi c標準,採用gnu c標準,遵從gpl版權許可。struct list head define list head init name define list head name st...

棧 鍊錶 全過程 C語言實現

棧的概念 棧的圖模擬 棧的基本操作概念 棧的c語言實現 準備工作,設定鍊錶中的單位節點。define elementtype int 為了方便,將資料型別設定為int型,typedef struct nodes stack,node node為結構體型別。stack 為指標型別,相當於node 函式...