第3章栈与队列答案

发布 2023-05-21 11:30:28 阅读 2779

return ok;

//allbrackets_test

2.int palindrome_test()

while(!stackempty(s))

return ok;

//palindrome_test

一、填空题。

1.队尾队首 2. 队列 4.队列的假溢出 5.先进先出。

二、选择题。

1. b 2. d 5.(1,2,2)

三、判断题。

四、简答题。

1.用队列长度计算公式: (n+r-f)% n

l=(40+19-11)% 40=8l=(40+11-19)% 40=32

2.一般的一维数组队列的尾指针已经到了数组的上界,不能再有入队操作,但其实数组中还有空位置,这就叫“假溢出”。

采用循环队列是解决假溢出的途径。

另外,解决队满队空的办法有三:

设置一个布尔变量以区别队满还是队空;

浪费一个元素的空间,用于区别队满还是队空。

使用一个计数器记录队列中元素个数(即队列长度)。

我们常采用法②,即队头指针、队尾指针中有一个指向实元素,而另一个指向空闲元素。

判断循环队列队空标志是: f=rear 队满标志是:f=(r+1)%n

五、阅读理解。

1.输出为“char”。

2.该算法的功能是:利用堆栈做辅助,将队列中的数据元素进行逆置。

六、算法设计题。

int elemtype;

typedef struct qnode

status enqueue(queue& q,elemtype e)

return ok; }

status dequeue(queue& q,elemtype& e)

return ok; }

第3章栈与队列答案

一 填空题。1.线性任何栈顶 2.栈顶栈底 3.移动栈顶指针存入元素。二 选择题。三 判断题。四 简答题。1 至少有14种。全进之后再出情况,只有1种 4,3,2,1 进3个之后再出的情况,有3种,3,4,2,1 3,2,4,1 3,2,1,4 进2个之后再出的情况,有5种,2,4,3,1 2,3,...

第3章 栈和队列作业

一 选择题。1.若一个栈的输入序列为1,2,3,n,输出序列的第一个元素是i,则第j个输出元素是 a.i j 1b.i jc.j i 1 d.不确定的。2.用s表示进栈操作,用x表示出栈操作。当输入序列为1234,输出序列为1342时,经过的栈操作为 a.sxsxssxxb.sssxxsxx c.s...

第3章习题与答案

dasb.43h c.54h d.67h 答案 c11.下列四条指令中,需要使用dx寄存器的指令是 bx bl ax,20h 20h,al 答案 c12.设 al 0e0h,cx 3,执行rcl al,cl指令后,cf的内容 a.0 b.1 c.不变 d.变反。答案 b13.下列四条指令中,错误的是...