- 栈
- 建立
- 方法实现
- 代码
- 队列
- 方法实现
特点:先进后出
建立- 顺序表实现
- 入栈
- 出栈
#include队列using namespace std; #define MAX 100 typedef int Elemtype; //栈 typedef struct { Elemtype* top, * bot; int size; }Stack; //栈初始化 void InitStack(Stack& s) { s.size = MAX; s.top = s.bot = new Elemtype[s.size]; } //入栈 void Push(Stack& s, Elemtype data) { *(s.top++) = data; } //出栈 void Pop(Stack& s, Elemtype& data) { data = *(--s.top); } //清空栈 void CleanStack(Stack& s) { s.top = s.bot; } //销毁栈 void DirstStack(Stack& s) { delete[] s.bot; s.top = s.bot = NULL; s.size = 0; }
特点:先进先出
方法实现- 入队
- 出队
#includeusing namespace std; #define MAX 100 typedef int Elemtype; typedef struct { Elemtype data[MAX]; int front, rear; }Queue; //初始化队列 void InitQueue(Queue& q) { q.front = q.rear = 0; } //入队列 void EnQueue(Queue& q, Elemtype data) { q.data[q.rear++] = data; } //出队列 void DeQueue(Queue& q, Elemtype& data) { data = q.data[q.front++]; }



