点击查看python实现栈和队列单靠代码
操作: 入栈:先判栈满,elements[++top] = x; 出栈:先判栈空,x = elements[top—]; 判栈空:top=-1; 判栈满:top = maxsize - 1;
双栈共享一个栈空间
两个栈共享一个数组空间V[maxSize]设立栈顶指针数组 t[2] 和栈底指针数组 b[2]初始 t[0] = b[0] = -1, t[1] = b[1] = maxSize 栈满条件:t[0]+1 == t[1] //栈顶指针相遇栈空条件:t[0] = b[0]或t[1] = b[1] //退到栈底 t[i]和b[i]分别指示第 i个栈的栈顶与栈底三类递归:
定义递归数据结构递归问题解法是递归的入队:q[rear++] = x; 出队:x = q[front++] 判队空:front == rear; 判队满:front - rear = maxsize
循环队列队空:front == rear 队满:(rear+1)%maxsize == front
链式队列