栈队列例题

Posted yg1024

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了栈队列例题相关的知识,希望对你有一定的参考价值。

1、若用一个大小为6的数组实现循环队列,队头指针front指向队首元素,队尾指针rear指向队尾元素的后一个位置。若当前rear和front的值分别为0和3,出队1个元素,入队2个元素,rear和front的值分别为:____  (A)

A. 1,5  B. 2,4  C. 4,2  D. 5,1

分析:技术分享图片

 

 

2、5个元素A、B、C、D、E顺序入栈,第一个出栈的元素为C,第二个出栈元素为D的出栈序列有____个  (A

A. 1  B. 2  C. 3  D. 4

分析:A进B进C进C出D进D出

 

3、设中缀表达式 12+(25-5*4)2/5,求:

(1)计算中缀表达式时,操作数栈的变化过程;

(2)给出后缀表达式。

 

4、后缀表达式:abc-/dc*+

(1)当a=6,b=4,c=2,d=3时,表达式的值为多少;

(2)后缀表达式求值过程中,需用到一个栈,给出栈的变化过程。

 

5、阅读下列程序,要求完成下列工作:(1)描述算法功能;(2)当输入序列为:8,4,2,0时,给出输出内容;(3)将它改为非递归过程。

void test(int &sum)
{
    int x;
    cin>>x;
    if(x == 0)    sum=0;
    else{
        test(sum);
        sum += x;
        }
    cout<<sum;
}

 



以上是关于栈队列例题的主要内容,如果未能解决你的问题,请参考以下文章

单调队列与单调栈例题(十二)(5.29)

第八节 数据结构

7.14 单调栈 单调队列 +dp优化

JS 执行机制 详解(附例题)

模板 - 数据结构 - 单调队列/单调栈

单调队列/单调栈入门详解+题目推荐