



队列在进行画图的时候,画在哪个格子不重要,重要的是队列里面的元素需要是连在一起的,可以将队列想象成循环队列,或者不限制空间的队列



(rear+1) % lengthOfArray
因为要求入队的元素的序号为0,所以 (rear+1) % lengthOfArry == 0;
即rear == n - 1;
所以开始的时候,front应该位于front的
rear在有的循环队列中会指向末尾元素的下一位,在有的循环队列中会指向末尾元素。
指向末尾元素下一位的,添加元素的过程:先将元素添加到末尾指针处,然后末尾指针(rear+1)% lengthOfArray;
指向末尾元素的,添加元素的过程:先将末尾指针移动一位:(rear+1)% lengthOfArray 然后将元素添加到rear处。
本题中,末尾指针是指向末尾元素的,所以是,先将指针循环向后移动一位,然后将元素添加到末尾指针处,由于要求元素添加在A【0】,因此,需要rear先指在A[0]的前一位,也就是最后一位
类比与通常情况,在添加元素的时候,头指针front是不动的,但是一定是指在待出队的元素的,所以如果只添加一个元素,添加完之后,front指针一定指在这个元素上,所以,front指向0

左括号为无条件进栈
栈顶为左括号的时候,其他任何运算符都直接进栈
如果待进栈的运算符的优先级大于栈顶运算符的优先级,才能进栈,如果待进栈运算符的优先级小于栈顶运算符的优先级,必须将栈顶元素出栈,然后待进栈元素才能进栈
遇到右括号的时候,在运算符栈中左括号上的所有运算符退栈,左右括号同时消失


1,1入1出,2入不出,其余的所有元素,都可能在入站之后立刻出栈,所以其余的所有的元素,可能性等于他们的个数==n-3
2,1入不出,2入2出,其余所有元素一样
综合1,2,一共有 n -3 + 2 == n-1 种可能

栈中元素依次为:是指的是从栈底,依次到栈顶


如果队尾指针指向元素的后一位,那么在队尾入队的过称为 :
将元素添加到队尾指针处,然后队尾指针循环向后移动一位

count为打印



A同上
B







对ABCD分别进行中缀表达式转后缀表达式,看栈是否溢出
中缀转后缀: 如果待入栈的优先级高,则直接入栈,否则(包括优先级相同)先出后入













视频讲解链接
https://www.bilibili.com/video/av9830115?from=search&seid=9085392221773721086

