栈、队列和数组 - suzhouzc/Data-Structure GitHub Wiki
-
n个元素这样的序列入栈,则出栈序列数共有

-
顺序栈的实现
#define MaxSize 10
typedef struct{ElemType data[MaxSize]; //静态数组存放栈中元素
int top; //栈顶指针}SqStack;
*顺序队列类型SqQueue
#define MaxSize 10
typedef struct{
ElemType data [MaxSize];
int front,rear;
}SqQueue;
*循环队列逻辑上的环://入队:Q.rear=((Q.rear+1)%MaxSize);可实现循环队列的算法 //出队:Q.front=(Q.front+1)%MaxSize;
判断队列是否满:1、在入队时少用一个数据元素,用队尾指针加1等于对头指针判断队满(1)队满:(Q。rear+1)%MaxSize==Q.front (2)队空:Q.rear==Q.front
队列中的元素个数:(rear+MaxSize-front)%MaxSize
2、
3、
*链式队列
typedef struct LinkNode{ //链式队列结点
ElemType data;
struct LinkNode *next;
}LinkNode;
typedef struct{ //链式队列
LinkNode *front,*rear; //队列的队头和队尾指针
}LinkQueue;

栈在中缀转换成后缀的方法:
二维数组的存储的结构:
