数据结构练习(答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据结构练习

1.填写下面表格,对以下几种排序方法进行比较:

3.

位置和队尾元素的位置,则判断队空的和队满的条件分别是f=r 和

f=r mod m +1。求此队列中元素个数的计算公式为:

((r+m)-f-1) mod m +1。

入队运算:r:=r mod m+1。

出队运算:f:=f mod m + 1。

4.单链表是非顺序线性的链式存储结构,链栈和链队分别是和的链式存储结构。

5.线性表的顺序存储中,元素之间的逻辑关系是通过元素存储地址次序决定的,在线性表的链接存储中,元素之间的逻辑关系是通过元素存储指针地址

访问决定的。

6.深度为5的二叉树至多有结点数为31。

7.数据结构即数据的逻辑结构包括顺性存储结构、链式存储结构、非线性结构三种类型,树型结构和图型结构称为非线性结构。

四种基本存储方法:(1)顺序存储方法(2)链接存储方法(3)索引存储方法(4)散列存储方法

二.选择题

1. >

2. 有一个10阶对称矩阵,采用压缩存储方式,以行序为主序存储,A[0][0]的地址为1,

则A[7][4]的地址为( C )

A 13

B . 18

C . 33

D . 40

3. 线性表采用链表存储时其存储地址 D 。

A .必须是连续的

B .部分地址必须是连续的

C .一定是不连续的

D .连续不连续都可以

4. 下列叙述中错误的是 C 。

A . 串是一种特殊的线性表,其特殊性体现在数据元素是一个字符

B . 栈和队列是两种特殊的线性表,栈的特点是后进先出,队列的特点是先进先出。

C . 线性表的线性存储结构优于链式存储结构

D .

E . 二维数组是其数据元素为线性表的线性表

5. 一棵二叉树的顺序存储结构如题图4-1所示,若中序遍历该二叉树,则遍历次序为

A .

6. A. DBEGACFH B. ABDEGCFH 7. C. DGEBHFCA D. ABCDEFGH

8. 1 2 3 4 5 6 7 8 9 10 11 12 13

14

9. ?

10.

设一棵二叉树的顺序存储结构如题图4-2所示,则该二叉树是 C .

A .完全二叉树

B .满二叉树

C .深度为4 的二叉树

D .深度为3的二叉树

11. — 12. 设T 是Huffman 树,它具有6个树叶,且各树叶的权分别为1,2,3,4,5,6。那么该树的非叶子结点的权之和为 A 。

A .51

B .21

C .30

D .49

7.设有一无向图的邻接矩阵如下所示,则该图所有顶点的度之和为 C 。

a b c d e a 0 1 1 1 0

b 1 0 1 0

1 c 1 1 0 0 0 d 1 0 0 0 0 e 0 1 0 0 0 A .8 B .9 C .10 D .11 。

8.已知二叉树的后序遍历序列是fedbgca ,中序遍历序列是dfebagc ,则该二叉树的先序遍历序列是 D 。

A .defbagc

B .abcdgef

C .dbaefcg

D .abdefcg 9.由三个结点构成的二叉树,共有 C 种不同的形态。 A .3 B . 4 C . 5 D . 6

10.在一个具有n 个顶点的无向图中,要连通全部顶点至少需要 D 条边 A . n B .n+1 C .n/2 D .n-1

11.对线性表进行折半(二分)查找时,要求线性表必须 B 。 A .以顺序方式存储 B .以顺序方式存储且数据元素有序

C .以链表方式存储

D .以链表方式存储且数据元素有序 —

12.顺序查找一个具有n 个元素的线性表,其时间复杂度为 A ,二分查找一个具有n 个元素的线性表,其时间复杂度为 B 。

A . O(n)

B . O(log 2n)

C . O(n 2)

D .O(nlog 2n)

13.从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列中的正确位置上,此方法称为 直接插入排序 ;从未排序序列中挑选元素,并将其放入已排序序列中的一端,此方法称为 直接选择排序 ;依次将每两个相临的有序表合并成一个有序表的排序方法称为 归并排序 ;当两个元素比较出现反序时就相互交换位置的排序方法称为 交换排序 ;

A .归并排序

B . 选择排序

C .交换排序

D .插入排序 三.简述下面的几个概念:单链表,栈、队列,排序二叉树。

四.简述空串和空格串的区别。

五.一棵度为2的树与二叉树有何区别 六.试分别画出具有3个结点的树和具有3个结点的二叉树

的所有不同形态。 七.已知一二叉树如题图4-3所示,

1. 用二叉链表和顺序存储方式分别存储此二叉树。画出图4-3

相应的存储结构图。

2. 《 3. 写出此二叉树的中序、先序、后序遍历序列。 八.已知一无向图如题图4-4所示,请给出该图的 1. 每个顶点的度。

2. \

3. 邻接矩阵 4. 邻接表 5. 按上述的邻接表写出广度和深度遍历序列。

九.已知一组数据元素为(46,75,18,54,15,27,42,39,

88,67)

1. 利用直接插入排序方法,写出每次插入后的结果。 2. 利用快速排序方法,写出每趟排序后的结果。

3. 利用2-路归并排序方法,写出每趟归并后的结果。 4. 利用冒泡排序方法,写出每趟排序后的结果。

十.假定一个表为(32,75,63,48,94,25,36,18,70),散列空间为[0..10],

1. 若采用除留余数法构造表,哈希函数为H (K )=K MOD 11,用线性探测法解决冲突,

试画出哈希表,并求在等概率情况下的平均查找长度。 2. \ 3. 若采用除留余数法构造表,哈希函数为H (K )=K MOD 11,用链地址法解决冲突,试

画出哈希表,并求在等概率情况下的平均查找长度。

十一. 有8个带权结点,权值为(3,7,8,2,6,10,14,9),试以它们为叶子结点构

造一棵哈夫曼树(要求每个结点左子树的权值小于等于右子树的权值),并计算出带权路径长度。

十二. 一对称阵A n*n ,若只存储此对称阵的上半三角元,写出以行为主序存储和以列为主

序存储时计算每一元素A ij 存储地址的公式。 十三. 算法设计

1. 写出在循环单链表L 中查找查找第i 个元素的算法:SEARCH (L ,i )。

2. 设有如下题图4-3的单链表,链表头指针为H ,写一个将链表进行逆转的算法,逆转

以后的链表为题图4-4所示。

3. 假定用一个带头结点的循环单链表表示循环队列(循环链队),该队列只设一个队尾

题图4-4单链表示意图 题图4-4

相关文档
最新文档