栈
一丶栈的定义
栈是限定仅在表尾进行插入和删除操作的线性表。其中允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何元素的栈称为空栈。
栈又称先进后出的线性表:
栈
1-1丶链式存储结构的栈
链栈的入栈操作:
链栈的入栈操作
链栈的出栈操作:
链栈的出栈操作
1-2丶栈的经典应用--逆波兰表达式法
我们平时进行四则运算时采用的四则运算表达式其实是中缀表达式,而计算机识别四则运算时会将中缀表达式通过入栈弹栈操作转变为后缀表达式,
中缀表达式转后缀表达式
队列
一丶队列的定义
队列(queue)是只允许在一端进行插入操作,而在另外一端进行删除操作的线性表,插入的一端为队尾,删除的一端为队头。如图所示:
队列1-1丶队列的链式存储结构
队列的链式存储结构如图所示,其本质就是只能尾进头出的线性单链表。
队列的链式存储结构
1-2丶队列的顺序存储结构
队列的顺序存储结构如图所示,其缺点是:出队复杂度高,容易假溢出。
队列的顺序存储结构
网友评论