东软数据结构,树和二叉树复习题
更新时间:2024-05-07 00:37:01 阅读量: 综合文库 文档下载
树和二叉树:纸质作业
一、已知二叉树T逻辑结构如下图所示,请分别用顺序存储和二叉链表存储法表示此树。
二、将下面的森林F=﹛T1,T2,T3﹜转换为对应的二叉树,并写出相应二叉树的先根遍历序列。
三、将下列由三棵树组成的森林转换为二叉树,并写出相应二叉树的中根遍历序列
B A C D E F K H L G I J M N O P 四、已知树T的孩子链表存储结构如图所示,试画出此树逻辑结构,以及此树转换成的二叉树逻辑结构,并写出二叉树的后根遍历序列
五、设一棵二叉树的先序序列为:A B D F C E G H 中序遍历序列为: B F D A G E H C (1)画出这棵二叉树。
(2)将这棵二叉树转换成对应的树(或森林)。 六、给定集合{15,3,14,2,6,9,16,17}
(1)构造相应的huffman树(规定:二叉树中两个结点,权值小的结点居左) (2)计算它的带权路径长度
(3)写出它的huffman编码:(规定:左子树编码为0,右子树编码为1,左小右大) 七、假设通信电文使用的字符集为{a,b,c,d,e,f},各字符在电文中出现的频度分别为:0.34,0.05,0.12,0.23,0.08,0.18,试为这6个字符设计哈夫曼编码。请先画出你所构造的哈夫曼树(要求树中左孩子节点的权值小于右孩子节点的权值,左分支表示字符“0”,右分支表示字符“1”),然后分别写出每个字符对应的编码。
八、假定教室中有A、B、C、D、E五个设备,需编写一套指令集对五个设备进行自动开关控制,五个设备一天中的使用次数分别是7,5,2,4,9次。为使得指令集长度最短,请对五个设备进行编码,要求画出哈夫曼树,并写出五个设备所对应的哈夫曼编码。
九、假定用于通讯的电文仅有8个字母C1,C2,?,C8组成,各个字母在电文中出现的频率分别为5,25,3,6,10,11,36,4,试为这8个字母设计哈夫曼编码树,并写出8个字符的哈夫曼编码
十、A,B,C,D,E的权值为{3, 2, 4, 5, 1},用此权值构造哈夫曼(Huffman)树,并求此哈夫曼(Huffman)树和各个字符的哈夫曼编码(左分支为0,右分支为1)
纸质作业2:排序
一、初始关键字序列如下:{49,38,65,97,76,13,27,49,55 04},请写出它们的希尔排序的全过程(其中d=5,3,1)
二、给定的关键字序列21,22,27,78,40,05,47,69,12,99,要按升序排序,请写出采用冒泡排序法前3趟的结果,和用堆排序法选择出最大和次大关键字的结果(图)
三、已知某文件的记录关键字集为{50,10,75,40,45,85,80},写出快速排序方法进行排序的前2次划分的结果
四、已知某文件的记录关键字集为{50,10,30,40,45,85,80},要从小到大进行排序,请分别写出直接插入排序的前2趟结果和直接选择排序的前3趟结果。 五、设要将序列(17,8,3,25,16,1,13,19,18,4,6,24)中的关键字按升序重新排列,请给出对该序列进行冒泡排序的第一趟排序结果、及以第一个元素为枢轴的快速排序的第一次划分的结果。
纸质作业3:查找
一、设哈希(Hash)表的地址范围为0~13,哈希函数为:H(K)=K MOD 13。K为关键字,用线性探测法再散列法处理冲突,输入关键字序列:
(23,24,32,4,31,30,46,47)造出Hash表,试回答下列问题: (1) 画出哈希表的示意图;
(2) 若查找关键字30,需要依次与哪些关键字进行比较? (3) 若查找关键字14,需要依次与哪些关键字比较? 假定每个关键字的查找概率相等,求查找成功时的平均查找长度。
二、请用序列(45,24,53,12,37,93)建立一棵二叉排序树,画出该树,并求在等概率情况下,查找成功的平均查找长度。
三、选取哈希函数H(key)=keyMod 11,用线性探测再散列开放定址法解决冲突。试在0~10的散列地址空间内对关键字序列?19、11、31、23、17、27、41、13、91、61?构造哈希表,并计算在等概率下成功查找的平均查找长度。
四、设有一组关键字{9,1,23,14,55,20,84,27},采用哈希函数:H(key)=key mod 7 ,表长为10,用开放地址法的线性探测再散列方法解决冲突。要求:对该关键字序列构造哈希表,并计算查找成功的平均查找长度。
五、设哈希(Hash)表的地址范围为0~17,哈希函数为:H (K)=K MOD 16,K为关键字,用线性探测再散列法处理冲突,输入关键字序列:{10,24,32,17,31,30,46,47,40,63,49}造出哈希表,试回答下列问题:
(1)画出哈希表示意图;
(2)若查找关键字63,需要依次与哪些关键字比较? (3)若查找关键字60,需要依次与哪些关键字比较?
(4)假定每个关键字的查找概率相等,求查找成功时的平均查找长度。 六、对于序列:12,16,23,34,45,57,78,91,95,100,112进行二分法查找:
(1)画出二分查找判定树
(2)求出等概率情况下,该二分查找的ASL?
(3)查找元素95需要经过几次比较?和哪些元素比较?
(4)查找元素20需要经过几次比较确定找不到?和哪些元素比较?
七、已知如下所示长度为12的表(34,25,68,72,21,15,49,29,77,8,19,102)
(1)按表中元素的顺序依次插入一棵初始为空的二叉排序树,画出插入完成之后的二叉排序树
(2)并求其在等概率的情况下查找成功的平均查找长度。
`习题一参考答案
2.试述数据结构研究的3个方面的内容。 参考答案:
数据结构研究的3个方面分别是数据的逻辑结构、数据的存储结构和数据的运算(操作)。
3.试述集合、线性结构、树型结构和图型结构四种常用数据结构的特性。 参考答案:
集合结构:集合中数据元素之间除了“同属于一个集合”的特性外,数据元素之间无其它关系,它们之间的关系是松散性的。
线性结构:线性结构中数据元素之间存在“一对一”的关系。即若结构非空,则它有且仅有一个开始结点和终端结点,开始结点没有前趋但有一个后继,终端结点没有后继但有一个前趋,其余结点有且仅有一个前驱和一个后继。
树形结构:树形结构中数据元素之间存在“一对多”的关系。即若结构非空,则它有一个称为根的结点,此结点无前驱结点,其余结点有且仅有一个前驱,所有结点都可以有多个后继。
图形结构:图形结构中数据元素之间存在“多对多”的关系。即若结构非空,则在这种数据结构中任何结点都可能有多个前驱和后继。
4.设有数据的逻辑结构的二元组定义形式为B=(D,R),其中D={a1,a2,?,an}, R={| i=1,2,?,n-1},请画出此逻辑结构对应的顺序存储结构和链式存储结构的示意图。 参考答案:
顺序存储结构示意图如下:
a1a2a3?an-1an
0 1 2 ? n-2 n-1 链式存储结构示意图如下:
a1a2a3?an^
5.设一个数据结构的逻辑结构如图1.9所示,请写出它的二元组定义形式。
K2 K4 K6 K5 K3 K1 K8 K9 K7
图1.9第5题的逻辑结构图
参考答案:
它的二元组定义形式为B=(D,R),其中D={k1,k2,k3,k4,k5,k6,k7,k8,k9},
R=
6.设有函数f (n)=3n2-n+4,请证明f (n)=O(n2)。
习题二参考答案
一、选择题
1. 链式存储结构的最大优点是( )。
A.便于随机存取 C.无需预分配空间
B.存储密度高
D.便于进行插入和删除操作
2. 假设在顺序表{a0,a1,??,an-1}中,每一个数据元素所占的存储单元的数目为4,且第0
个数据元素的存储地址为100,则第7个数据元素的存储地址是()。 A. 106 B. 107 C.124 D.128
3. 在线性表中若经常要存取第i个数据元素及其前趋,则宜采用( )存储方式。
A.顺序表
C.不带头结点的单链表
B. 带头结点的单链表 D. 循环单链表
4. 在链表中若经常要删除表中第一个结点或在最后一个结点之后插入一个新结点,则宜采
用( )存储方式。 A. 顺序表
B. 用头指针标识的循环单链表 D. 双向链表
C. 用尾指针标识的循环单链表
5. 在一个单链表中的p和q两个结点之间插入一个新结点,假设新结点为S,则修改链的
java语句序列是( )。
A. s.setNext(p); q.setNext(s); B. p.setNext(s.getNext()); s.setNext(p); C. q.setNext(s.getNext()); s.setNext(p); D. p.setNext(s); s.setNext(q); 6. 在一个含有n个结点的有序单链表中插入一个新结点,使单链表仍然保持有序的算法的
时间复杂度是( )。
A. O(1) B. O(log2n) C. O(n) D. O(n2)
7. 要将一个顺序表{a0,a1,??,an-1}中第i个数据元素ai(0≤i≤n-1)删除,需要移动( )
个数据元素。
A. i B. n-i-1 C. n-i D. n-i+1
8. 在带头结点的双向循环链表中的p结点之后插入一个新结点s,其修改链的java语句序
列是( )。
A. p.setNext(s); s.setPrior(p); p.getNext().setPrior(s); s.setNext(p.getPrior());
B. p.setNext(s); p.getNext().setPrior(s); s.setPrior(p); s.setNext(p.getNext());
C. s.setPrior(p); s.setNext(p.getNext()); p.setNext(s); p.getNext().setPrior(s);
D. s.setNext(p.getNext()); s.setPrior(p); p.getNext().setPrior(s);
p.setNext(s);
9. 顺序表的存储密度是( ),而单链表的存储密度是( )。
A.小于1 B. 等于1 C. 大于1 D. 不能确定 10. 对于图2.29所示的单链表,下列表达式值为真的是( )。
head A B P1 C D P2 E
图2.29 单链表head的存储结构图
A. head.getNext().getData()=='C' B. head.getData()=='B' C. P1.getData()==’D’ D. P2.getNext()==null 二、填空题
1. 线性表是由n(n≥0)个数据元素所构成的有限序列,其中n为数据元素的个数,称为线性表的长度,n=0的线性表称为空表。
2. 线性表中有且仅有一个开始结点和终端结点,除开始结点和终端结点之外,其它每一个数据元素有且仅有一个前驱,有且仅有一个后继。
3. 线性表通常采用顺序存储和链式存储两种存储结构。若线性表的长度确定或变化不大,则适合采用顺序存储结构进行存储。
4. 在顺序表{a0,a1,??,an-1}中的第i(0≤i≤n-1)个位置之前插入一个新的数据元素,会引起n-i个数据元素的移动操作。
5. 在线性表的单链表存储结构中,每一个结点有两个域,一个是数据域,用于存储数据元素值本身,另一个是指针域,用于存储后继结点的地址。
6. 在线性表的顺序存储结构中可实现快速的随机存取,而在链式存储结构中则只能进行 顺序存取。
7. 顺序表中逻辑上相邻的数据元素,其物理位置一定相邻,而在单链表中逻辑上相邻的数据元素,其物理位置不一定相邻。
8. 在仅设置了尾指针的循环链表中,访问第一个结点的时间复杂度是o(1)。
9. 在含有n个结点的单链表中,若要删除一个指定的结点p,则首先必须找到指针结点的前驱,其时间复杂度为o(n)。
10. 若将单链表中的最后一个结点的指针域值改为单链表中头结点的地址值,则这个链表就
构成了循环单链表。
一、单项选择题
1. 下面描述错误的是()
A. HTML文件由开头,标记结束。 B.文档头信息包含在
与之间。C.在
和之间可以包含A.
标记 B.
标记 C.
标记 D.
3. 超级链接是互联网的灵魂,下面哪个是正确的链接标记()
A. B. C. D. 4. 下面不属于标记中的 type 属性取值的是()
A.password B.text C.submit D.textarea 5. 标记中的 type 属性为时表示单选按钮()
A.password B.submit C.radio D.text
6. 在html标记中,哪个标记用于设置当前页面的标题。() A. head B. nameC. title D. html 7. 下列标签中没有自动换行作用的是()
A. a B h1C. p
D li
8. HTML语言中,表格标记符是()
AB. C.
D. 9. CSS是的缩写。()A.ComputerStyleSheetsB.CascadingStyleSheets C.CreativeStyleSheetsD.ColorfulStyleSheets
10. 能在浏览器的地址栏中看到提交数据的表单提交方式是(B)
C.Java语法语言 D.C语言语法 6. JSP的英文单词全称是。
A. Java Servlet B. Java Server Pages C. JavaScript D.Java Bean
7. 下列哪一种不是JSP页面的组成元素.( D)。
A.JSP标签,如指令标签 B.普通的HTML标记符 C.Java表达式D.C语言程序
8. Page 指令用于定义 JSP 文件中的全局属性,下列关于该指令用法的描述不
正确的是:(D )
A. <%@ page %>作用于整个 JSP 页面。
B. 可以在一个页面中使用多个<%@ page %>指令。
C. 为增强程序的可读性,建议将<%@ page %>指令放在 JSP 文件的开头,但不是必须的。
D. <%@ page %>指令中的属性只能出现一次。
9. 不是 JSP 运行必须的是(D.
A.操作系统B.JavaJDKC.支持 Jsp 的 Web 服务器D.数据库
10. 在JSP中如果要导入 java.io.* 包,应该使用page指令的属性。()
A. language B. sessionC. import D. info
11. 可以在以下哪个()标记之间插入 Java 程序片?(A.
A.<% 和 %>B.<% 和 />C. 和 %>D.<% 和 !> 12. JSP 的 Page 编译指令的属性 Language 的默认值是:(A.
A.JavaB.CC.C#D.SQL 13. 可以在以下哪个()标记之间插入变量与方法声明?(B.
A.<% 和 %>B.<%!和 %>C. 和 %>D.<% 和 !> 14. 能在浏览器的地址栏中看到提交数据的表单提交方式是(B) A.submitB.getC.post D.out 15. 给定JSP程序源码如下:
<% int count =1;%>
以下(B.语句可以在下划线处插入,并且运行后输出结果是: 1。 A:<%=++count %> B:<% ++count; %> C:<% count++; %>
D:<% =count++ %> 三简答题
1. 请简述JSP运行原理。
2. 请简述include指令与include动作之间的区别。 3. JSP中可以有哪些种注释?请写出具体格式。
4. 请列出三个JSP标准动作,并说明这些动作完成的功能.
第四章
选择题
1. 以下对象中的()不是JSP的内置对象。
A.request B.session C.applicationD.bean
2. 在JSP中,内置对象()封装了用户提交的信息,使用该对象可以获取用户提交的信息。
A.sessionB.request
C.response D.out
3. request对象可以使用()方法获取表单中某输入框提交的信息。
A.getParameter(String s) B.getValue(String s)
C.getParameterNames(String s) D.getParameterValue(String s)
4. JSP的内置对象中()对象可对客户的请求作出动态响应,向客户端发送数据。
A.response B.request C.application D.out 5. 以下方法,哪个可使session无效?()。
A.session.removeAttribute(String key) B.session.invalidate()
C.session.setAttribute(String key) D.session.getAttribute(String key) 6. application对象能在()间共享。
A.某个访问者所访问的当前页面
B.某个访问者所访问的网站的各个页面之间
C.该服务器上的所有的访问者的所有jsp页面
D.该服务器上的所有的访问者的所有jsp页面和Java程序 7. request.getRemoteAddr()方法的作用是:()。
A.获取客户提交的信息B.获取客户的IP C.获取客户机的名称 D.获取服务器的IP 8. 下面不属于 JSP 内置对象的是(D)
A)out 对象B)respone 对象 C)application 对象D)page 对象
9. 调用 getCreationTime()可以获取 session 对象创建的时间,该时间的单位是(C)。
A)秒B)分秒C)毫秒 D)微秒
10. 可以利用 JSP 动态改变客户端的响应,使用的语法是(A)
A)response.setHeader() B)response.outHeader() C)response.writeHeader() D)response.handlerHeader()
11. 页面程序片中可以使用下列哪个方法将 strNumx=request.getParamter(“ix”) JSP 得到的
数据类型转换为 Double 类型() A)Double.parseString(strNumx) B) Double.parseDouble(strNumx) C) Double.parseInteger(strNumx) D)Double.parseFloat(strNumx)
简答题
1. JSP的内置对象方法、作用。
2. 运行session1.jsp,写出其运行结果!
s1.jsp <% session.setAttribute(\session.setAttribute(\response.sendRedirect(\
s2.jsp 您的信息为: 用户名:<%=session.getAttribute(\密码:<%=session.getAttribute(\ 3. 用户在reg.html中输入:用户名Tom;密码123;选择爱好为游泳、阅读,请写出程序
的运行结果。
reg.html
正在阅读:
东软数据结构,树和二叉树复习题05-07
北师大版一年级数学下册第五单元测试卷06-19
4安全生产规章制度汇编04-14
悬挑脚手架施工方案04-20
一窗竹影印梦痕散文11-21
高中政治必修一(经济生活)主观题解题技巧12-17
2011年教师编制教育学和心理学考试重点05-27
游泳初学者必知的三个技巧02-09
刘新路在全国“三品一标”工作会议上的讲话04-01
迎来送往祝酒词02-17
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 复习题
- 东软
- 数据结构
- 多功能健身器设计
- 基于单片机的电子负载毕业论文(含原理图+程序)
- 店小伙收银后台管理操作手册
- 爱爱医资源-儿科常用图表
- 全国各地2016年中考英语试题考点分类汇编被动语态(含解析)
- 前厅部规范管理制度
- 第十三章补充习题及参考答案
- 科普知识竞赛题库
- 幼儿园值班流程(2015.8)
- 中国特种油品行业市场深度调研分析与投资机会研究报告行业发展趋
- 2013吉林省驾校考试科目一手动挡(必备资料)
- 内蒙古高速和一级公路施工标准化管理指南
- 用随机算法求第k小项 - 图文
- 2010年11 月 人力资源和社会保障部
- 形势任务教育报告会宣讲提纲
- 基坑支护专项方案(专家论证)
- 室分工程日常工作要求及质量管理办法1 - 图文
- 2019年中国更年期用药市场前景研究与市场前景预测报告(定制版)
- 数据库系统概论试题及答案2
- 人机工程学考试资料