奥鹏答案网-奥鹏作业答案-奥鹏在线作业答案-奥鹏离线作业答案-奥鹏毕业论文-专业奥鹏作业答案辅导网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 173|回复: 0

天大2021年春学期考试《数据结构》离线作业考核试题

[复制链接]

2万

主题

2万

帖子

6万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
64471
发表于 2021-4-19 13:34:08 | 显示全部楼层 |阅读模式

数据结构
要求:
一、        独立完成,下面已将五组题目列出,请按照学院平台指定的做题组数作答,每人只答一组题目,多答无效,100分;
    平台查看做题组数操作:学生登录学院平台→系统登录→学生登录→课程考试→离线考核→离线考核课程查看→做题组数,显示的数字为此次离线考核所应做哪一组题的标识;
    例如:“做题组数”标为1,代表学生应作答“第一组”试题;
二、答题步骤:
1.        使用A4纸打印学院指定答题纸(答题纸请详见附件);
2.        在答题纸上使用黑色水笔按题目要求手写作答;答题纸上全部信息要求手写,包括学号、姓名等基本信息和答题内容,请写明题型、题号;
三、提交方式:请将作答完成后的整页答题纸以图片形式依次粘贴在一个Word
    文档中上传(只粘贴部分内容的图片不给分),图片请保持正向、清晰;
1.        完成的作业应另存为保存类型是“Word97-2003”提交;
2.        上传文件命名为“中心-学号-姓名-科目.doc”;
3.        文件容量大小:不得超过20MB。
提示:未按要求作答题目的作业及雷同作业,成绩以0分记!

题目如下:
第一组:
一、编程题(30分,共60分)
(一)        
1.设单链表中有仅三类字符的数据元素(大写字母、数字和其它字符),要求利用原单链表
中结点空间设计出三个单链表的算法,使每个单链表只包含同类字符。
2. 设计在链式存储结构上交换二叉树中所有结点左右子树的算法。
(二)        
1.        设计在单链表中删除值相同的多余结点的算法。
2.        设计一个求结点x在二叉树中的双亲结点算法。
二、解答题(20分)
(一)        
对下面的带权无向图采用prim算法从顶点①开始构造最小生成树。(写出加入生成树顶点集合S和选择Edge的顺序)
                                                                                                  

                 9          10
②      7       ③
            5            6         7
④            ⑤             ⑥
               11            8

S:        顶点号         





         Edge:
         (顶点,顶点,权值)
        ①                        (,,)
        ①                        (,,)
        ①                        (,,)
        ①                        (,,)
        ①                        (,,)
        ①                                

三、画图题(20分)
(一)        
已知一树的双亲表示法如下,其中各兄弟结点是依次出现的,画出该树对应的二叉树。

        1        2        3        4        5        6        7        8        9        10        11        12        13        14        15
data        A        B        C        D        E        F        G        H        I        J        K        L        M        N        O
parent        0        1        1        1        2        2        3        3        4        4        5        6        6        7        8








第二组:
一、编程题(30分,共60分)
(一)        
对于二维整数数组A[m][n],对下列三种情况,分别编写相应的函数。
1.        求数组所有边缘元素的数值和。
int sum1(int A[M][N],int m ,int n)
{
2.求从A[0][0]开始的互不相邻的所有元素的和
注:一个元素的八个方向上的第一个元素均为相邻元素。
int sum2 (int A[M][N] , int m , int n)
{
3. 假定m=n,并为偶数,请分别计算正、反两条对角线上的元素值之和。
int sum3(int A[M][N] , int n)
{
(二)        
设顺序表L是一个递增有序表,试写一算法,将x插入L中,并使L仍是一个有序表。
二、解答题(20分)
(一)        
设有一个求解汉诺塔(Hanoi)的递归算法
voidHANOI (int n , int peg1 , int peg2 , int peg3)
{
if (n= =1)
printf(”move %d to %d\n”,peg1,peg3);
else
{
HANOI (n-1, peg1, peg3, peg2);
printf(”move %d to %d\n”,peg1,peg3);
HANOI (n-1, peg2, peg1, peg3) ;
}
}
假定采用HANOI(3,1,2,3)去调用上述算法,则写出整个输出结果的前四行内容。

三、画图题(20分)
(一)        
某子系统在通信联络中只可能出现8种字符,其出现的概率分别为0.05,0.29,0.07,0.08,0.14,0.23,0.03,0.11试设计赫夫曼编码























第三组:
一、编程题(30分,共60分)
(一)        设顺序表L是一个递增有序表,试写一算法,将x插入L中,并使L仍是一个有序表。

(二)        用标准C语言实现Hanoi塔问题

二、解答题(20分)

(一)        
对下面的带权无向图采用prim算法从顶点①开始构造最小生成树。(写出加入生成树顶点集合S和选择Edge的顺序)
                                                                                                  

                 9          10
②      7       ③
            5            6         7
④            ⑤             ⑥
               11            8

S:        顶点号         





         Edge:
         (顶点,顶点,权值)
        ①                        (,,)
        ①                        (,,)
        ①                        (,,)
        ①                        (,,)
        ①                        (,,)
        ②                                


三、画图题(20分)
(一)        

将给定的图简化为最小的生成树,要求从顶点1出发。

            
      
                     
        













第四组:
一、编程题(30分,共60分)
(一)        
已知某哈希表的装载因子小于1,哈希函数H(key)为关键字(标识符)的第一个字母在字母表中的序号,处理冲突的方法为线性探测开放定址法。试编写一个按第一个字母的顺序输出哈希表中所有关键字的算法。
(二)        
用标准C语言实现Hanoi塔问题
二、解答题(20分)
(一)        
设待排序记录的关键字序列为{46, 55, 13, 42, 94, 05, 17, 70}写出其第一趟快速排序过程。(要求写出每次交换后的序列,并且枢轴记录到位也算一次交换)

初始关键字:  46   55   13   42   94   05   17   70
1次交换后:
2次交换后:
3次交换后:
4次交换后:
5次交换后:
三、画图题(20分)
(一)        
将下面的森林变换成二叉树

















第五组:
一、编程题(30分,共60分)
(一)        
对于二维整数数组A[m][n],对下列三种情况,分别编写相应的函数。
1.        求数组所有边缘元素的数值和。
int sum1(int A[M][N],int m ,int n)
{
2.求从A[0][0]开始的互不相邻的所有元素的和
注:一个元素的八个方向上的第一个元素均为相邻元素。
int sum2 (int A[M][N] , int m , int n)
{
3. 假定m=n,并为偶数,请分别计算正、反两条对角线上的元素值之和。
int sum3(int A[M][N] , int n)
{
(二)        
1.设有一组初始记录关键字序列(K1,K2,„,Kn),要求设计一个算法能够在O(n)的时间
复杂度内将线性表划分成两部分,其中左半部分的每个关键字均小于Ki,右半部分的每个关键字均大于等于Ki。
2. 设有两个集合A和集合B,要求设计生成集合C=A∩B的算法,其中集合A、B和C用链
式存储结构表示。
二、解答题(20分)
(一)        
写出下图所示的AOV网的可能拓扑序列,要求至少写出五个










三、画图题(20分)
(一)        

将给定的图简化为最小的生成树,要求从顶点1出发。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 价格公开

  • 优质服务

  • 专属客服

  • 信息开放

  • 担保交易

 
 
客服一号
客服二号
客服三号
客服四号
点击这里给我发消息
官方微信扫一扫
快速回复 返回顶部 返回列表