算法基础 上机实验 3 学 期: 2017 (秋).

Slides:



Advertisements
Similar presentations
摆一摆,想一想. 棋子个数数的个数 摆出的数 、 10 2 、 11 、 20 3 、 12 、 21 、 30 4 、 13 、 22 、 31 、 40 5 、 14 、 23 、 32 、 41 、
Advertisements

集团公司火力发电厂热工自动控 制系统的投入情况和问题分析 东北所热自室. 自动控制系统是机组热工专业管理水 平和设备状态的集中体现,一台机组 的自动投入率和自动调节品质体现了 机组的整体水平。同时,自动控制效 果的优劣,也是机组节能降耗目标的 实现手段和基础。
2014 年 10 月. 学生入学考试 15 位编号 号工号 ****** 北科 MBA 网址: 如: 初试密码为身份证 后六位,登录成功 后可进行修改。
练一练: 在数轴上画出表示下列各数的点, 并指出这些点相互间的关系: -6 , 6 , -3 , 3 , -1.5, 1.5.
在文章中插入图片 What to do? 任务一(1):请你在“愤怒的小鸟”这个文档中插入“红色小鸟”的图片。 要求:1、自学课本45-47页“做一做”的内容,找到在文档中插入图片的方法后,就动手试一试吧。 哪一小组最先完成,会加平时成绩10分噢,加油吧!
实验四 利用中规模芯片设计时序电路(二).
C语言实验 第一课 标题:学号+姓名.
C++中的声音处理 在传统Turbo C环境中,如果想用C语言控制电脑发声,可以用Sound函数。在VC6.6环境中如果想控制电脑发声则采用Beep函数。原型为: Beep(频率,持续时间) , 单位毫秒 暂停程序执行使用Sleep函数 Sleep(持续时间), 单位毫秒 引用这两个函数时,必须包含头文件
在PHP和MYSQL中实现完美的中文显示
SOA – Experiment 3: Web Services Composition Challenge
SVN服务器的搭建(Windows) 柳峰
走进编程 程序的顺序结构(二).
辅导课程六.
Zhao4zhong1 (赵中) C语言指针与汇编语言地址.
Zhao4zhong1 (赵中) C语言指针与汇编语言地址.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
段磊 王慧锋 TEL: qq群: 数据库系统原理课程设计 实验环节2 段磊 王慧锋 TEL: qq群:
以ISI平台为例,为您演示一下如何在Endnote文献中查看该文献的References
第17章 网站发布.
第11讲 树和二叉树(二).
数据挖掘工具性能比较.
动态规划(Dynamic Programming)
中国科学技术大学计算机系 陈香兰(0551- ) Spring 2009
分布式程序设计 姚斌 计算机科学与工程系 上海交通大学.
28.1 锐角三角函数(2) ——余弦、正切.
算法基础 上机实验 2 学 期: 2015 (秋).
使用矩阵表示 最小生成树算法.
SOA – Experiment 2: Query Classification Web Service
编程作业3:网页正文抽取 (10分).
录制回放工具使用说明 鲁晓宇
数列.
C语言程序设计 主讲教师:陆幼利.
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
Web安全基础教程
顺序表的删除.
计算机及办公软件应用 ©2013 苏州工业园区职业技术学院
线 性 代 数 厦门大学线性代数教学组 2019年4月24日6时8分 / 45.
实验一 体验Nachos下的并发程序设计 陈毅东 2006年春.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月13日.
实验七 安全FTP服务器实验 2019/4/28.
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
算法基础 上机实验 1 学 期: 2016 (秋).
实验三 16位算术逻辑运算实验 不带进位控制的算术运算 置AR=1: 设置开关CN 1 不带进位 0 带进位运算;
iSIGHT 基本培训 使用 Excel的栅栏问题
3.16 枚举算法及其程序实现 ——数组的作用.
算法基础 上机实验 1 学 期: 2015 (秋).
算法基础 上机实验 4 学 期: 2016 (秋).
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
Visual Basic程序设计 第13章 访问数据库
第七、八次实验要求.
算法基础 上机实验 4 学 期: 2017 (秋).
分数再认识三 真假带分数的练习课.
实验3讲解 实验5,6说明 韩路新 2016年3月25日.
2019/5/21 实验一 离散傅立叶变换的性质及应用 实验报告上传到“作业提交”。 11:21:44.
#define RBTREE_RED 0 #define RBTREE_BLACK 1 typedef int dataType; typedef struct treeNode{ dataType key; int color; //red:0.
第9章 多媒体技术 掌握 Windows 画图工具的基本操作; 掌握 Windows 音频工具进行音频播放;
实验目的:掌握数据的顺序存储结构及它们在计算机中的操作。 实验内容:
第六章 Excel的应用 五、EXCEL的数据库功能 1、Excel的数据库及其结构 2、Excel下的数据排序 (1)Excel的字段名行
欧式复古花纹模板 ST模板 年4月14日.
本底对汞原子第一激发能测量的影响 钱振宇
算法基础 上机实验 3 学 期: 2015 (秋).
第四章 UNIX文件系统.
插入排序的正确性证明 以及各种改进方法.
创建、启动和关闭Activity 本讲大纲: 1、创建Activity 2、配置Activity 3、启动和关闭Activity
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
任课教师:戴开宇 TA:时均帅、谭肖、王安华 程序设计B班 :20-16:50(90分钟)
实验六、COM类型病毒分析实验 实验开发教师: 刘乃琦 谌黔燕.
第二次课后作业答案 函数式编程和逻辑式编程
软件工程课程设计 分组信息说明
Cfc Zeilberger 算法 陈焕林 陈永川 付梅 臧经涛 2009年7月29日.
Presentation transcript:

算法基础 上机实验 3 学 期: 2017 (秋)

Project 3: 红黑树和顺序统计树 实验1:实现红黑树的基本算法, 对n的取值分别为 12、24、36、48、60,随机生成n 个互异的正整数(K1, K2, K3, ……, Kn)作为节点的关键字,向一棵初始空的红黑树中依次插入这n 个节点,统计算法运行所需时间 ,画出时间曲线。(红黑树采用三叉链表) 实验2:对上述生成的红黑树,找出树中的第n/3小的节点和第n/4小的节点,并删除这两个节点,统计算法运行所需时间 , 画出时间曲线。

实验要求 1、输入输出格式: c)output: a)两个实验建立一个共同的project文件夹,每个文件夹分别包含3个文件夹: input文件夹:存放输入数据 source文件夹:源程序 output文件夹:输出数据 b)input: 实验一输入文件中每行一个随机数据,总行数大于等于60,分别读取12、24、36、48、60个正整数进行构建红黑树。 实验二不需要输入文件,直接对实验一构造的红黑树进行删除节点操作。 c)output: 为每种数据规模建立一个子文件夹,分别为size12,size24,size36,size48,size60,其输出结果数据导出到其对应子文件下面 preoreder.txt :输出构建好的红黑树的前序遍历序列 inorder.txt: 输出构建好的红黑树的中序遍历序列 postorder.txt: 输出构建好的红黑树的后序遍历序列 time1.txt:运行时间效率的数据。测试插入操作构建树的花费的时间,要求每插入10个节点测试一下花费的时间,并记录下构建完成所花的总时间 第二个实验输出结果同样是导入到相同的对应子文件夹下面 delete_data.txt :输出删除的两个数据 time2.txt: 测试删除掉实验要求删除掉的两个节点所花费的时间,每删除掉一个节点测试一次

实验要求 2、算法实现: a)本次实验需要实现红黑树部分基本算法主要包括如下: 1)实现红黑树左旋操作 LEFT-ROTATE(T, x) 实现右旋操作 RIGHT-ROTATE(T, x) 2)实现红黑树插入节点的操作 RB-INSERT(T, z)以及插入之后修正为红黑书的的算法 RB-INSERT-FIXUP(T, x)(在函数实现过程中对于 case1 case2 case3 的三部分代码要注释清楚) 3)实现红黑树删除节点的操作 RB-DELETE(T, z)以及插入之后修正为红黑书的的算法 RB-DELETE-FIXUP(T, x) (在函数实现过程中对于 case1 case2 case3 case4的四部分代码要注释清楚) 4)实现按要求数据构建顺序统计树的操作 5)实现遍历输出构建好的红黑树的操作 6)实现查找顺序统计树的第i小关键字的操作OS-SELECT(T.root,i) b) 为了验证第二个实验的正确性,要求编写一个检测程序,使用中位数一章的线性时间的选择算法Select(a,p,r,i)在输入数据找到找到第n/3小的节点和第n/4小节点,与OS-SELECT(T.root,i)的结果delete_data进行对比检查

实验要求 3、实验细节 a)本次实验要求实现的是附加一个x.size信息的红黑即顺序统计树 b)输入数据要求是互不相同的正整数 c)自行设计一个较方便的函数,使得在检查时能够显示树的详细信息,以便能够观察到结点插入、删除前后树的结构变化(包括结点颜色,秩,父子节点关系等信息) ,每行输出一个key的信息 d)第二个实验要求删除的第n/3小的节点和第n/4小的节点的n是动态变化的,而不是静态的,执行一次删除操作n的值减少1,例如n为12,首先删除12/3=4小节点 然后删除12/4=3小的节点 e)由于删除节点等函数代码量比较大,要注意代码可读性和条理性,注释清楚实现过程

实验要求 4、性能测试 a)用适当的方法,或工具记录排序算法在执行时所消耗的时,图表格式参考实验一给出的图表式样; b)根据不同输入规模时记录的数据,画出算法在不同输入规模下的运行时间曲线图,比较不同规模下时间曲线变化规律的异同,给出分析.

5、注意事项: a)实验报告中要有必要的实验过程截图和图表; b)图片要有单位,横纵坐标等信息; c)ex1,ex2目录结构严格按照实验格式的要求; d)代码中需要有必要的注释; e)实验杜绝抄袭他人代码或者实验结果,如发现代码高度相似或者实验报告雷同者算0分; f)实验报告模板另附课程主页上。(qq群也有) 算法基础--2012

6、实验提交: a)实验要求提交源码,输入输出结果,实验报告。 b)将上述文件夹严格打包成.rar格式,命名方式:学号-姓名-project3.rar。 发送邮件给邮箱:ncaa_lab508@126.com。邮箱邮件主题为“学号-姓名- project3”,助教在收到邮件后会及时发送确认邮件。 c)如果有同学在截止日期前要重复提交,邮件主题需说明重复提交。 (注:重复提交 打包命名方式: (2)学号-姓名-project3.rar (3)学号-姓名-project3.rar 等 邮件主题也相应改为:(2)学号-姓名-project3 (3)学号-姓名-project3 等 尽量一次性做好再提交,不要重复提交) d)第三次实验截止日期:12月27日晚24点,逾期提交实验成绩将作0分处 理。 算法基础--2012