🏷️ 知识点:数组
栈的应用不包括()。
A. 递归 B. 表达式求值 C. 括号匹配 D. 缓冲区
[tag_link]
正确答案:D
表达式 a*(b+c)-d 的后缀表达式是()。
A. abcd*+一 B. abc+d- C. abc +d- D. 一十*abcd
[tag_link]
正确答案:B
下面()用到了队列。
A. 括号匹配 B. 表达式求值 C. 递归 D. FIFO页面替换算法
[tag_link]
正确答案:D
利用栈求表达式的值时,设立运算数栈OPEN。假设OPEN 只有两个存储单元,则在下 列表达式中,不会发生溢出的是()。
A. A-B*(C-D) B.(A-B)C-D C.(A-BC)-D D.(A-B)*(C-D)
[tag_link]
正确答案:B
执行下列语句段后,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. 无限递归
[tag_link]
正确答案:B
设有如下递归函数,则计算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
[tag_link]
正确答案:C
设有如下递归函数,在func(fun c(5)) 的执行过程中,第4个被执行的 func 函数是()。 2;int func(int x){ if(x<=3)return 2; func(x-2)+func(x-4);else return func(x-2)+func(x-4);
A. func(2) B.func(3) C.func(4) D.func(5)
[tag_link]
正确答案:
对于一个问题的递归算法求解和其相对应的非递归算法求解,()。
A. 递归算法通常效率高一些 B. 非递归算法通常效率高一些 C. 两者相同 D. 无法比较
[tag_link]
正确答案:B
执行函数时,其局部变量一般采用()进行存储。
A. 树形结构 B. 静态链表 C. 栈结构 D. 队列结构
[tag_link]
正确答案:C
执行()操作时,需要使用队列作为辅助存储空间。
A. 查找散列(哈希)表 B. 广度优先搜索图 C. 前序(根)遍历二叉树 D. 深度优先搜索图
[tag_link]
正确答案:B
下列说法中,正确的是()。
A. 消除递归不一定需要使用栈 B. 对同一输入序列进行两组不同的合法入栈和出栈组合操作,所得的输出序列也一定相同 C. 通常使用队列来处理函数或过程调用 D. 队列和栈都是运算受限的线性表,只允许在表的两端进行运算
[tag_link]
正确答案:A
【2012 统考真题】已知操作符包括“+”“一”“”“I”“(” 和“)”。将中缀表达式 a+b-a((c+d)/e-f)+g 转换为等价的后缀表达式 ab+acd+e/f-*-g+ 时,用栈来存 放暂时还不能确定运算次序的操作符。栈初始时为空,转换过程中同时保存在栈中的操 作符的最大个数是()。
A. 5 B.7 C.8 D.1 1
[tag_link]
正确答案:A
假设一个算术表达式中包含圆括号、方括号和花括号3种类型的括号,编写一个算法来 判别表达式中的括号是否配对,以字符“\0”作为算术表达式的结束符。
[tag_link]
D