第三章单元测试
- 设有一顺序栈S,元素s1,s2,s3,s4,s5,s6 依次进栈,如果6个元素出栈的顺序是s2,s4,s3,s6,s5,s1,则栈的容量至少应该是
- 一个栈的入栈序列是1,2,3,4,5,则栈的不可能输出序列是
- 一个队列的入队序列是1,3,5,7,9,则出队的输出序列只能是
- 设循环队列中数组的下标范围是1~n,其头尾指针分别为f和r,则其元素个数为
- 设数组data[m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行入队操作后其尾指针rear值为
- 递归过程或函数调用时,处理参数及返回地址,使用的数据结构是
- 栈中元素的进出原则是
- 判定一个栈ST(最多元素为m0)为空的条件是
- 判定一个队列QU(最多元素为m0)为满队列的条件是
- 在一个链式队列中.假设f和r分别为队头和队尾指针,则插入s所指的结点运算是
- 向一个栈指针为HS的链式栈中插入一个s所指的结点时,则执行
- 设一个栈的输入序列是1,2,3,4,5,则下列序列中,是栈的合法输出序列的是( )。
- 进栈序列为a,b,c,则通过入、出栈可能得到的a,b,c的不同排列个数是()。
- 表达式a*(b+c)-d 的后缀表达式是( )。
- 设计一个判别表达式中左,右括号是否配对出现的算法,采用( )数据结构最佳。
- 用不带头结点的单链表存储队列时,其队头指针指向队头结点,其队尾指针指向队尾结点,则在进行删除操作时( )。
- 假设以数组A[m]存放循环队列的元素,其头尾指针分别为front和rear,则当前队列中的元素个数为()。
- 循环队列A[0..m-1]存放其元素值,用front和rear分别表示队头和队尾,则当前队列中的元素数是( )。
- 若用一个大小为6的数组来实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素后,rear和front的值分别为多少?()
- 栈和队都是()。
- 栈的操作原则是( )。
- 下面术语中,与数据的存储结构无关的是( )。
- 栈和队列具有相同的( )。
- 递归算法必须包括( )。
A:2 B:3 C:5 D:4
答案:3
A:1,2,3,4,5 B:5,4,3,1,2 C:3,2,4,5,1 D:3,5,4,2,1
A:1,3,5,7,9 B:9,5,1,7,3 C:9,7,5,3,1 D:1,5,9,3,7
A:r-f+1 B:(r-f+n)%n C:r-f D:(r-f)%n+1
A:rear=(rear+1)%(m-1) B:rear=rear+1 C:rear=(rear+1)%m D:rear=(rear-1)%m
A:多维数组 B:线性表 C:栈 D:队列
A:栈空则进 B:栈满则出 C:后进先出 D:先进先出
A:ST->top<>0 B:ST->top==m0 C:ST->top<>m0 D:ST->top==0
A:QU->front = = QU->rear B:QU->rear - QU->front -1= = m0 C:QU->rear - QU->front = = m0 D:QU->front = = QU->rear +1
A:f->next=s;f=s; B:s->next=s;r=s; C:s->next=f;f=s; D:r->next=s;r=s;
A:S->NEXT=HS->NEXT;HS->NEXT=S; B: S->NEXT=HS;HS=HS->NEXT; C:HS->NEXT=S;
A:45 1 32 B:43 1 25 C:5 1 23 4 D:3 2 15 4
A:7 B:6 C:5 D:4
A:-+*abcd B:abcd*+- C:abc*+d- D:abc+*d-
A:栈 B:线性表的顺序存储结构 C:队列 D:线性表的链式存储结构
A:队头、队尾指针都可能要修改 B:队头、队尾指针都要修改 C:仅修改队尾指针 D:仅修改队头指针
A:(rear-front+m)%m B:(rear-front)%m C:(front-rear+m)%m D:rear-front+1
A:rear-front-1 B:(rear-front+m)%m C:rear-front+1 D:rear-front
A:1 和5 B:4和2 C:5 和1 D:2和4
A:顺序存储的线性结构 B:限制存取点的非线性结构 C:限制存取点的线性结构 D:链式存储的非线性结构
A:先进先出 B:后进先出 C:后进后出 D:顺序进出
A:栈 B:顺序表 C:循环队列 D:顺序栈
A:逻辑结构 B:运算 C:存储结构 D:抽象数据类型
A:终止条件和迭代部分 B:迭代部分 C:递归部分 D:终止条件和递归部分
温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!