数据结构复习题习题全六章含答案 联系客服

发布时间 : 星期六 文章数据结构复习题习题全六章含答案更新完毕开始阅读

同的下一个结点,right指针域指向________相同的下一个结点。 7.一个广义表中的元素分为________元素和________元素两类。 8.一个广义表的深度等于________嵌套的最大层数。

9.在广义表的存储结构中,每个结点均包含有________个域。

10.在广义表的存储结构中,单元素结点与表元素结点有一个域对应不同,各自分别为________域和________域。

11.若把整个广义表也看为一个表结点,则该结点的tag域的值为________,next域的值为________。 三、应用题

1. 已知一个稀疏矩阵如下图所示:

0 4 0 0 0 0 0 0 0 0 -3 0 0 1 8 0 0 0 0 0 0 0 0 0 5 0 0 0 0 -7 0 0 0 2 0 0 0 0 6 0 0 0 具有6行×7列的一个稀疏矩阵

(1) 写出它的三元组线性表; (2) 给出它的顺序存储表示;

(3) 给出它的转置矩阵的三元组线性表和顺序存储表示;

2. 画出下列每个广义表的带表头附加结点的链接存储结构图并分别计算出它

们的长度和深度。 (1) A=(())

(2) B=(a,b,c) (3) C=(a,(b,(c))) (4) D=((a,b),(c,d)) (5) E=(a,(b,(c,d)),(e)) (6) F=((a,(b,(),c),((d),e)))

第四章 栈和队列

一、单选题

1.栈的插入与删除操作在 进行。

A、栈顶 B、栈底 C、任意位置 D、指定位置 2.当利用大小为N的一维数组顺序存储一个栈时,假定用top==N表示栈空,则向这个栈插入一个元素时,首先应执行 语句修改top指针。 A、top++ B、top-- C、top=0 D、top 3.若让元素1,2,3依次进栈,则出栈次序不可能出现 种情况。 A、3,2,1 B、2,1,3 C、3,1,2 D、1,3,2 4.在一个循环顺序队列中,队首指针指向队首元素的 位置。 A、前一个 B、后一个 C、当前 D、后面 5.当利用大小为N的一维数组顺序存储一个循环队列时,该队列的最大长度为 。

A、N-2 B、N-1 C、N D、N+1 6.从一个循环顺序队列删除元素时,首先需要 。

A、前移一位队首指针 B、后移一位队首指针 C、取出队首指针所指位置上的元素 D、取出队尾指针所指位置上的元素

7.假定一个循环顺序队列的队首和队尾指针分别为f和r,则判断队空的条件是 。

A、f+1==r B、r+1==f C、f==0 D、f==r 8.假定一个链队的队首和队尾指针分别为front和rear,则判断队空的条件是 。

A、front==rear B、front!=NULL C、rear!=NULL D、front==NULL 二、填空题

1.队列的插入操作在 进行,删除操作在 进行。 2.栈又称为 表,队列又称为 表。

3.向一个顺序栈插入一个元素时,首先使 后移一个位置,然后把待插入元素

到这个位置上。

4.从一个栈中删除元素时,首先取出 ,然后再前移一位 。 5.在一个循环顺序队列Q中,判断队空的条件为 ,判断队满的条件为 。

6.在一个顺序栈中,若栈顶指针等于 ,则为空栈;若栈顶指针等于 ,则为满栈。

7.在一个链栈中,若栈顶指针等于NULL,则为 ;在一个链队中,若队首指针与队尾指针的值相同,则表示该队列为 或该队列为 。

8.向一个链栈插入一个新结点时,首先把栈顶指针的值赋给 ,然后把新结点的存储位置赋给 。

9.从一个链栈中删除一个结点时,需要把栈顶结点 的值赋给 。

10.向一个顺序队列插入元素时,需要首先移动 ,然后再向所指位置 新插入的元素。

11、当用长度为N的一维数组顺序存储一个栈时,假定用top==N表示栈空,则表示栈满的条件为 。

12.向一个栈顶指针为HS的链栈中插入一个新结点*P果,应执行 和 操作。

13.从一个栈顶指针为HS的非空链栈中删除结点并不需要返回栈顶结点的值和回收结点时,应执行 操作。

14.假定front和rear分别为一个链队的队首和队尾指针,则该链队中只有一个结点的条件为 。

15. 中缀算术表达式3+4/(25-(6+15))*8 所对应的后缀算术表达式为 。

16. 后缀算术表达式24 8 + 3 * 4 10 7 - * / 所对应的中缀算术表达式为 , 其值为 。 三、应用题

执行下面函数调用后得到的输出结果是什么? void AF(Queue & Q)