2014数据结构习题集(2)

2018-12-27 15:58

Pop(T,d); Push(S,d);

}

3. 写出下列程序段的输出结果。 (1)void main(){ Stack S; char x,y; InitStack(S); x=’i’; y=’s’;

Push(S,x); Push(S,’r’); Push(S,y); Pop(S,x); Push(S,’h’); Push(S,x); Pop(S,x); Push(S,’c’);

while (!StackEmpty(S)) {Pop(S,y);printf(y);} printf(x); }

(2)void main(){

Queue Q; InitQueue(Q); char x=’e’, y=’c’;

EnQueue(Q, ‘a’); EnQueue(Q, ‘d’); EnQueue(Q, y); DeQueue(Q, x); EnQueue(Q, x); DeQueue(Q, x); EnQueue(Q, ‘r’);

while (!QueueEmpty(Q)) { DeQueue(Q, y); printf(y); } printf(x); }

4. 已知L是带头结点的单链表。试写一算法求该单链表的长度。 5. 已知L是带头结点的单链表。试写一算法在该链表上查找值为x的元素。

6. 将带头结点的L中的第i个数据元素删除。

7. 在带头结点的L中第i个元素之前插入数据元素e 。 8. 正位序输入n个元素的值,建立带头结点的单链表L。

9. 已知线性表中的元素以值递增有序排列,并以带有头结点的单链表作存储结构。试写一算法删除表中所有值大于mink且小于maxk的元素,同时释放被删除的结点空间。 10. LA和LB是两个数据元素按升序排列的单链表,将LA和LB合并为有序单链表LC。写出这两个有序链表合并的算法。

}

6

第六章习题

一、

单选或填空题

1. 已知完全二叉树的第7层上有10个叶子结点,则整个二叉树的结点数最多是

A) 73 B) 63 C) 235 D) 245

2. 300个结点的完全二叉树的叶结点有 个。 3.一个具有1025个结点的二叉树的高h为____。

A)11 B)10 C)11至1025之间 D)10至1024之间

4. 将一棵有100个节点的完全二叉树从上到下,从左到右依次对节点进行编号,根节点的编号为1,则编号为49的节点的右孩子编号为( )。 A.99 B.98 C.50 D.48 5.把如右图所示的树转换成二叉树时,C是( ) A. A的左子女 B. A的右子女 C. B的左子女 D. B的右子女

6. 设森林F中有3棵树,其结点个数分别是n1、n2和n3,则与森林对应的二叉树根结点的右子树上的结点个数是 。

A) n1-1 B)n1+n2 C) 0 D) n2+n3

7. 在一颗度为3的树T中,若有10个度为3的结点,5个度为2的结点,则树T的叶结点有 个。 A) 15 B) 26 C) 25 D) 40

8. 一棵二叉树中序遍历结果为DCBAEFG,后序遍历结果为DCBGFEA。则此二叉树先序遍历的结果应为

A) ABCDEFG B)ABECFDG C)AEBFCGD D)不能确定

9. 将一棵树t 转换为孩子—兄弟链表表示的二叉树h,则t 的后根遍历是h 的

A)先序遍历 B)中序遍历 C)后序遍历 C)层序遍历

10.现有一段电文共100个字符,其中A出现50次,B出现20次,C出现5次,D出现10次,E出现15次。现对这5个字符进行哈夫曼编码,则其平均码长为 。

11. 现有一段电文共100个字符,其中A出现35次,B出现27次,C出现8次,D出现20次,E出现10。现对这5个字符进行哈夫曼编码(注:建立哈夫曼树时权值小的为左子树,权值大的为右子树),则字符E的编码为 。

7

A) 011 B) 001 C) 1101 D) 1111

解答题

1. 某二叉树的中序遍历结果为DEFABCG;后序遍历结果为FEDCBAG。

(1)画出此二叉树,并给出其先序遍历的结果。 (2)画出与这棵二叉树对应的树(森林)。

2. 已知一个二叉树的先序遍历序列为:ABDGIECFH;中序遍历序列为:DIGBEAFHC。 (1)画出该二叉树

(2)画出下图所示森林对应的二叉树。

K A A BCDLA A A A EFGA A A JIHA A A

3. 某二叉树层序序列为abcdefghij,中序序列为bgdhjaecif。 (1)画出该二叉树;

(2)画出该二叉树的后序后继线索树; (3)画出该二叉树对应的树或森林。

4. 已知某通讯用电文仅有A、B、C、D、E、F六个字符构成,其出现的频率分别为26,8,17,11,28,10,请首先建立哈夫曼树,然后给出六个字符的哈夫曼编码(注:建立哈夫曼树时权值小的为左子树,权值大的为右子树)。

5. 假设用于通信的电文仅由8个字母组成,字母在电文中出现的频率分别为0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10。

(1) 试为这8个字母设计赫夫曼编码。

(2) 试设计另一种由二进制表示的等长编码方案。 (3) 对于上述实例,比较两种方案的优缺点。 三、算法题

二、

8

1. 以二叉链表作为二叉树的存储结构,编写以下算法: (1)求先序序列为k的结点的值 (2)求二叉树中叶子结点的数目 (3)交换所有结点的左右子树 (4)求二叉树的深度

9

第七章 习题

一. 单选或填空题

1. 若某有向图的邻接矩阵A只有0和1两种元素,其中aij=1

表示有向图中存在弧,则编号为i顶点的入度可用 表示。

A) 邻接矩阵中第i行元素之和 B) 邻接矩阵中第i列元素之和

C) 邻接矩阵中对角线元素之和 D) 以上均不正确 2. 使用邻接表作为某无向图的存储结构,若无向完全图中有n个顶点,则邻接表中必存在 个表结点。 2

A)n B)2n C)n(n-1) D) 2n-1

3. 一个含有n个顶点和e条边的无向图,在其邻接矩阵存储结构中共有()零元素。 22

A.e B.2e C.n-e D.n-2e

4.在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的( )倍。

A.1/2 B.1 C.2 D.4

5.下列关于图的叙述中,正确的是( ) Ⅰ、 回路是简单路径

Ⅱ、存储稀疏图,用邻接矩阵比邻接表更省空间 Ⅲ、若有向图中存在拓扑序列,则该图不存在回路 A.仅Ⅱ B.仅Ⅰ、Ⅱ C.仅Ⅲ D.仅Ⅰ、Ⅲ

6. 若一个图的边集为{(A,B),(A,C),(B,D),(C,F),(D,E),(D,F)},则从顶点A开始对该图进行广度优先搜索,得到的顶点序列可能为__________。

A.A,B,C,D,E,F B.A,B,C,F,D,E C.A,B,D,C,E,F D.A,C,B,F,D,E 7.在有n个结点的无向图中,其边数最多为 。 8. 对于具有n个结点的连通图,它的最小生成树中有 条边。 2

A)n B)n-1 C)n(n-1) D) n(n-1)/2 9. 关键路径是AOE网中

A)从源点到汇点的最长路径 B)从源点到汇点的最短路径

C)最长回路 D)最短回路 10. 以下关于图的描述中,正确的是 A) n个顶点的无向完全图有n(n2?1)条边。

10


2014数据结构习题集(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2018年中国电子音乐行业分析及发展趋势预测(目录)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: