栈队列数组试题(三)——栈和队列的应用

一、单项选择题
01.栈的应用不包括( ).
A.递归                        B.表达式求值                C.括号匹配                D.缓冲区

02.表达式a* (b+c)-d的后缀表达式是()。
A. abcd*+一                B. abc+*d-                    C. abc*+d-                D.-+*abcd

03.下面()用到了队列。
A.括号匹配                  B.表达式求值             C.递归                   D.FIFO页面替换算法

04.利用栈求表达式的值时,设立运算数栈OPEN。假设OPEN只有两个存储单元,则在下
列表达式中,不会发生溢出的是().
A.A-B*(C-D)                B. (A-B)*C-D                C. (A-B*C)-D              D. (A-B) *(C-D)

05.执行完下列语句段后,i的值为().

int f(int x){
        return ((x>0)?x*f(x-1):2);
int i;
i=f(f(1));

A.2                               B.4                                C.8                             D、无限递归

06.设有如下递归函数,则计算F(8)需要调用该递归函数的次数为()。

int F(int n){
        if (n<=3)   return 1;
        else return F(n-2)+F(n-4)+1;

}

A.7                                B.8                              C.9                                D.10

07.设有如下递归函数,在func(func(5))的执行过程中,第4个被执行的func函数是()

int func(int x){
        if(x<=3)  return 2;
        else return func(x-2)+func(x-4);

}

A. func(2)                        B. func (3)                C. func (4)                       D. func ( 5)

08.对于一个问题的递归算法求解和其相对应的非递归算法求解,().
A.递归算法通常效率高一些                                B.非递归算法通常效率高一些
C.两者相同                                                         D.无法比较

09.执行函数时,其局部变量一般采用()进行存储。
A.树形结构                    B.静态链表             C.栈结构                      D.队列结构

10.执行()操作时,需要使用队列作为辅助存储空间。
A.查找散列(哈希)表                                         B.广度优先搜索图
C.前序(根)遍历二叉树                                     D.深度优先搜索图

11.下列说法中,正确的是().
A.消除递归不一定需要使用栈
B.对同一输入序列进行两组不同的合法入栈和出栈组合操作,所得的输出序列也一定相同
C.通常使用队列来处理函数或过程调用
D.队列和栈都是运算受限的线性表,只允许在表的两端进行运算

12.【2009统考真题】为解决计算机主机与打印机之间速度不匹配的问题,通常设置一个打
印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。该缓冲区的逻辑结构应该是().
A.栈                                B.队列                     C.树                                 D.图

13.【2012统考真题】已知操作符包括“+”“-”“*”“/”“(”和“)”。将中缀表达式a+b-a* ( (c+d)/e-f)+g转换为等价的后缀表达式ab+acd+e/f-*-g+时,用栈来存放暂时还不能确定运算次序的操作符。栈初始时为空时,转换过程中同时保存在栈中的操作符的最大个数是().
A. 5                                    B.7                             C. 8                                 D.11

14.【2014统考真题】假设栈初始为空,将中缀表达式a/b+ (c*d-e*f)/g转换为等价的后
缀表达式的过程中,当扫描到f时,栈中的元素依次是( )。
A.+(*一                               B.+(一*                       C./+(*一*                          D./+-★

15.【2015统考真题】已知程序如下:

int S(int n)
{        return (n<=0)?0:s (n-1)+n;}
void main()
{        cout<<S(1);)}

程序运行时使用栈来保存调用过程的信息,自栈底到栈顶保存的信息依次对应的是()。
A. main()→S(1)→S(0)                                                B.S(0)→S(1)→main ()
C. main()→S(0)→S(1)                                                D.S(1)→S(0)→main ()

16.【2016统考真题】设有如下图所示的火车车轨,入口和出口之间有n条轨道,列车的行
进方向均为从左至右,列车可驶入任意一条轨道。现有编号为1~9的9列列车,驶入的次序依次是8,4,2,5,3,9,1,6,7。若期望驶出的次序依次为1~9,则n至少是( )。

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

17.【2017统考真题】下列关于栈的叙述中,错误的是().
I.采用非递归方式重写递归程序时必须使用栈
I.函数调用时,系统要用栈保存必要的信息
Ⅲ.只要确定了入栈次序,即可确定出栈次序
IV.栈是一种受限的线性表,允许在其两端进行操作
A.仅I                                  B.仅I、Ⅱ、Ⅲ               C.仅I、Ⅲ、IV        D.仅Ⅱ、Ⅲ、IV

18.【2018统考真题】若栈s1中保存整数,栈s2中保存运算符,函数F()依次执行下述各
步操作:
1)从S1中依次弹出两个操作数a和b。
2)从S2中弹出一个运算符op。
3)执行相应的运算b op a。
4)将运算结果压入S1中。
假定S1中的操作数依次是5,8,3,2(2在栈顶),S2中的运算符依次是*、-、+(+在栈顶)。调用3次F()后,S1栈顶保存的值是().
A.-15                        B.15                        C.-20                D.20

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/748502.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

简单了解 vim 编辑器最基础的操作

简单了解 vim 编辑器最基础的操作 vim 这个是 Linux 上自带的一个文本编辑器&#xff0c;使用 vim 就可以更灵活的对文件进行编辑了&#xff08;虽然和记事本的定位差不多,实际上vim的使用要复杂很多&#xff09; 1.打开文件 语法&#xff1a;vim 文件名 示例&#xff1a;…

速盾:cdn是什么和作用有哪些

CDN, 也叫内容分发网络&#xff08;Content Delivery Network&#xff09;&#xff0c;是一种构建在分布式网络基础上的网络技术&#xff0c;旨在提高页面的访问速度和用户体验。CDN通过在全球各地部署服务器节点&#xff0c;并将网站的静态和动态内容复制到这些节点上&#xf…

16.旋转图像

给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像&#xff0c;这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,2,3],[4,5,6],[7,8,9]] 输出&…

关于本地项目连接git远程仓库以及git设置ignore文件

一、本地项目如何连接git远程仓库 第一步&#xff0c; 首先我们在git上新建仓库。 第二步&#xff0c;打开本地项目文件夹&#xff0c;鼠标右键选择Git Bash Here 。 第三步&#xff0c;输入git init 命令&#xff08;在目录中创建新的 Git 仓库&#xff09;。 第四步&#xff…

Python强大的库和框架——NumPy

NumPy&#xff08;Numerical Python&#xff09;是一个用于科学计算的强大库&#xff0c;提供了支持大型、多维数组和矩阵的数据结构&#xff0c;以及用于处理这些数组的大量数学函数。 以下是关于 NumPy 的一些详解&#xff1a; 1. 安装 NumPy&#xff1a; 可以使用以下命令…

ubuntu 安装 infiniband 和 RoCE 驱动

下载驱动程序 驱动程序地址 https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/ 安装 安装参考文档 https://docs.nvidia.com/networking/display/mlnxofedv24010331/installing+mlnx_ofed#src-2571322208_InstallingMLNX_OFED-InstallationProced…

BUGKU-WEB cookies

题目描述 题目截图如下&#xff1a; 进入场景看看&#xff1a; 解题思路 看源码看F12&#xff1a;看请求链接看提示&#xff1a;cookies欺骗 相关工具 插件&#xff1a;ModHeader或者hackbarbase64解密 解题步骤 看源码 就是rfrgrggggggoaihegfdiofi48ty598whrefeoia…

构建部署_Jenkins介绍与安装

构建部署_Jenkins介绍与安装 构建部署_Jenkins介绍与安装Jenkins介绍Jenkins安装 构建部署_Jenkins介绍与安装 Jenkins介绍 Jenkins是一个可扩展的持续集成引擎。 持续集成&#xff0c;就是通常所说的CI&#xff08;Continues Integration&#xff09;&#xff0c;可以说是现…

MySQL--深入理解MVCC机制原理

什么是MVCC&#xff1f; MVCC全称 Multi-Version Concurrency Control&#xff0c;即多版本并发控制&#xff0c;维持一个数据的多个版本&#xff0c;主要是为了提升数据库的并发访问性能&#xff0c;用更高性能的方式去处理数据库读写冲突问题&#xff0c;实现无锁并发。 什…

JUC之volatile关键字

Volatile 被volatile修饰的变量有两大特点&#xff1a;可见性与有序性 volatile的内存语义 volatile凭什么可以保证可见性和有序性&#xff1f;&#xff1f;&#xff1f;内存屏障 Memory Barrier 内存屏障 四大屏障 Volatile保证可见性、没有原子性&#xff0c;指令禁重…

手撕算法-对称二叉树

力扣101. 对称二叉树 链接 https://leetcode.cn/problems/symmetric-tree/description/ 题目描述 给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。示例1&#xff1a;此树是对称的。示例2&#xff1a;此树也是对称的示例3&#xff1a;此树不对称 思路 一颗…

【WEEK3】学习目标及总结【SpringMVC】【中文版】

学习目标&#xff1a; 三周完成SpringMVC入门——第三周 感觉这周很难完成任务了&#xff0c;大概率还会有第四周 学习内容&#xff1a; 参考视频教程【狂神说Java】SpringMVC最新教程IDEA版通俗易懂数据处理JSON交互处理 学习时间及产出&#xff1a; 第三周 MON~FRI 2024.…

15 stack和queue的实现

栈和队列作为容器适配器,只需要将容器封装模板,传入什么容器用什么容器就好了 栈 #pragma oncetemplate <class T, class container vector<T>> class stack { public:void push(const T& x){_con.push_back(x);}void pop(){_con.pop_back();}T& top(){…

代码缺陷代价

目录 什么是语法缺陷什么是类型安全缺陷什么是内存和资源安全缺陷什么是并发安全缺陷什么是错误处理缺陷 什么是语法缺陷 语法缺陷是指程序中存在的语法错误或违反语法规则的问题。它通常是由于编程语言的语法规则不符合要求导致的。例如&#xff0c;缺少分号、括号不匹配、关…

peft模型微调--Prompt Tuning

模型微调&#xff08;Model Fine-Tuning&#xff09;是指在预训练模型的基础上&#xff0c;针对特定任务进行进一步的训练以优化模型性能的过程。预训练模型通常是在大规模数据集上通过无监督或自监督学习方法预先训练好的&#xff0c;具有捕捉语言或数据特征的强大能力。 PEF…

ubuntu(20.04)-安装JAVA环境-IDEA

1.下载IDEA 2.解压文件 sudo tar -zxvf idealC-2022.2.3.tar.gz -C /opt 3.添加环境变量&#xff1a; .vim ~/.bashrc export IDEA_HOME/opt/ideaIC-2022.2.3/ export PATH${IDEA_HOME}/bin:$PATH source ~/.bashrc 4.启动&#xff1a; cd /opt/ideaIC-2…

什么是SFP光模块?如何选择?

SFP光模块作为全球制造商和供应商的行业标准&#xff0c;至今仍被广泛使用。在许多网络中&#xff0c;如SONET、千兆以太网、光纤通道、PON和其他通信标准中&#xff0c;SFP光模块已经成为行业的中坚力量。本指南将为您介绍一些关于选择SFP模块的技巧。 什么是SFP光模块&#…

什么是浅拷贝和深拷贝

目录 一、概念 浅拷贝&#xff08;Shallow Copy&#xff09; 深拷贝&#xff08;Deep Copy&#xff09; 二、Java中使用工具来帮助进行对象的拷贝 ⭐三、bean工具类 总结 一、概念 当涉及到对象复制时&#xff0c;浅拷贝和深拷贝是两个重要的概念。它们描述了在复制对象…

Docker部署ChatGLM3、One API、FastGPT

创建并运行chatglm3容器 docker run --name chatglm3 -p 8000:8000 registry.cn-hangzhou.aliyuncs.com/ryyan/chatglm.cpp:chatglm3-q5_1 创建并运行one-api容器 (其中挂载路径 D:\one-api 可以选择你自己喜欢的目录) docker run --name oneapi -d -p 3000:3000 -e TZAsia…

Linux下的多线程编程:原理、工具及应用(2)

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;Flower of Life—陽花 0:34━━━━━━️&#x1f49f;──────── 4:46 &#x1f504; ◀️ ⏸ ▶️ ☰ …