文档详情

数据结构精选考研试题.pdf

发布:2018-01-13约1.8万字共24页下载文档
文本预览下载声明
[注]:编写程序可选用任一种高语言,算法描述可采用类语言,必要时加上注释 一、 回答下列问题:[20分] 1、 算法的定义和性质 2、 为什么说数组与广义表是线性表的推广? 3、 什么是结构化程序设计? 4、 哈希方法的基本思想 5、 给出一不稳定排序方法名称与实例 二、 构造结果:[24分] (1) 确定x: x+1语句在下面程序段中的频率,要求写出分析过程。 for i: 1ton do forj: 1toI do fork: 1toj dox: x+1 (2) 画出对长度为8的有序表进行折半查找的判定树,并求其在等概率时查找成功的平均 查找长度。 (3) 已知一棵二叉树如右图,给出对这棵二叉树进行前序、中序、后序遍历的结果序列. (4) 假设用于通讯的电文仅由8个字母组成,字母在电文中出现的频率分别为{2,3,5, 7,11,4,13,15},试为这8个字母设计哈夫曼编码. (5) 在地址空间为0~15 的散列区中,对以下关键字序列构G 造哈希表,关键字序列为 (Jan,Feb,Mar,Apr,May,Jun,JulAug,Sep,Oct,Nov,Dec),H(x) [i/2] ,其中i 为关键字中第一 字母在字母表中的序号。要求用线性探测开放定址法处理冲突,并求出在等概率情况下查找 成功的平均查找长度。 (6) 构造有7个元素组成的线性表一实例,是进行快速排序时比较次数最少的初始排序。 三、 写一算法,完成对这棵二叉树的左右子树的交换,设二叉树以二叉链表作存储结构。 [15分] 四、 编写一非递归算法,对一棵二叉排序树实现中序遍历。[15分] 五、 编写程序,完成下列功能:[15分] 1. 读入整数序列,以整数0 作为序列的结束标志 (0 不作为序列元素),建立一个单链表。 2.实现单链表原地逆转,即单链表中结点指针方向反转,反转操作不使用额外的链表结点, 可使用临时工作单元。 例:输入序列为:1,8,4,3,0 六、 给出有向图G 的邻接表表示。找出其一棵最小生成树。[11分] [注]:编写程序可选用任一种高语言,算法描述可采用类语言,必要时加上注释 一、 回答下列问题:[20分] 1、 算法的定义和性质 2、 为什么说数组与广义表是线性表的推广? 3、 什么是结构化程序设计? 4、 哈希方法的基本思想 5、 给出一不稳定排序方法名称与实例 二、 构造结果:[24分] (1) 确定x: x+1语句在下面程序段中的频率,要求写出分析过程。 for i: 1ton do forj: 1toI do fork: 1toj dox: x+1 (2) 画出对长度为8的有序表进行折半查找的判定树,并求其在等概率时查找成功的平均 查找长度。 (3) 已知一棵二叉树如右图,给出对这棵二叉树进行前序、中序、后序遍历的结果序列. (4) 假设用于通讯的电文仅由8个字母组成,字母在电文中出现的频率分别为{2,3,5, 7,11,4,13,15},试为这8个字母设计哈夫曼编码. (5) 在地址空间为0~15 的散列区中,对以下关键字序列构G 造哈希表,关键字序列为 (Jan,Feb,Mar,Apr,May,Jun,JulAug,Sep,Oct,Nov,Dec),H(x) [i/2] ,其中i 为关键字中第一 字母在字母表中的序号。要求用线性探测开放定址法处理冲突,并求出在等概率情况下查找 成功的平均查找长度。 (6) 构造有7个元素组成的线性表一实例,是进行快速排序时比较次数最少的初始排序。 三、 写一算法,完成对这棵二叉树的左右子树的交换,设二叉树以二叉链表作存储结构。 [15分] 四、 编写一非递归算法,对一棵二叉排序树实现中序遍历。[15分] 五、 编写程序,完成下列功能:[15分] 1. 读入整数序列,以整数0 作为序列的结束标志 (0 不作为序列元素),建立一个单链表。 2.实现单链表原地逆转,即单链表中结点指针方向反转,反转操作不使用额外的链表结点, 可使用临时工作单元。 例:输入序列为:1,8,4,3,0 六、 给出有向图G 的邻接表表示。找出其一棵最小生成树。[11分] [ ] PASCAL C 注 编写程序可选用 或 语言 算法描述采用类语言,应加上必要的注释 所有答案均要求写在答题纸上 一、 回答问题 [15分]
显示全部
相似文档