#include
using
namespace std;
//棧typedef
struct
stack;
//初始化棧
void
stack_init
(stack &s)
//入棧
void
stack_push
(stack &s,
int e)
*(s.top)
= e;
s.top++;}
//出棧
void
stack_pop
(stack &s,
int&e)
//得到棧頂元素
void
stack_gettop
(stack s,
int&e)
//佇列(鏈佇列)
typedef
struct qnode
qnode,
*queueptr;
typedef
struct
linkqueue;
//初始化佇列
void
queue_init
(linkqueue &q)
//銷毀佇列
void
queue_destroy
(linkqueue &q)
}//插入(佇列)
void
queue_insert
(linkqueue &q,
int e)
//刪除(佇列)
void
queue_delete
(linkqueue &q,
int&e)
//佇列的順序儲存結構(迴圈佇列)
typedef
struct
sqqueue;
//初始化佇列
void
sqqueue_init
(sqqueue &q)
//佇列長度
intsqqueue_length
(sqqueue q)
//入隊
void
sqqueue_insert
(sqqueue &q,
int e)
//出隊
void
sqqueue_delete
(sqqueue &q,
int&e)
intmain()
for(
int i =
0; i <
5; i++
) cout << endl;
linkqueue q1;
queue_init
(q1)
;for
(int i =
0; i <
5; i++
)for
(int i =
0; i <
5; i++
) cout << endl;
sqqueue q2;
sqqueue_init
(q2)
;for
(int i =
0; i <
5; i++
)for
(int i =
0; i <
5; i++
)return0;
}
c 語言資料結構 棧和佇列的相關操作
目錄三,棧的鏈式儲存實現 佇列三,佇列的鏈式實現 只允許在一端進行插入或刪除操作的線性表。見如下 片段,體會順序棧的定義 define maxsize 10 typedef struct sqstack void teststack 初始化棧 void initstack sqstack s 我們也...
資料結構 棧和佇列
棧 基礎 知識棧 練習題 佇列 基礎知識 棧示意圖 後進先出 順序棧結構定義 define maxsize 1024 struct stack 操作函式 push 入棧 pop 出棧 struct lstack 鏈棧示意圖 操作函式 push 入棧 pop 出棧 注意 也可以直接呼叫系統已經寫好的庫...
資料結構 棧和佇列
本章的基本內容是 兩種特殊的線性表 棧和佇列 從資料結構角度看,棧和佇列是操作受限的線性表,他們的邏輯結構相同。從抽象資料型別角度看,棧和佇列是兩種重要的抽象資料型別。p棧 限定僅在表的一端進行插入和刪除操作的線性表。p允許插入和刪除的一端稱為棧頂,另一端稱為棧底。p空棧 不含任何資料元素的棧。a ...