- 2
- 0
- 约1.04万字
- 约 24页
- 2017-11-16 发布于江苏
- 举报
实验报告模版叉树基本操作与哈夫曼编码译码系统设计方案书
课程设计报告
( 2013 /2014 学年 第 2 学期)
题 目:二叉树基本操作与哈夫曼编码译码系统的设计
专业:
学生姓名:
班级学号:
指导教师
指导单位
日期
评分细则 评分项 成绩 遵守机房规章制度(5分) 上机时的表现(5分) 学习态度(5分) 程序准备情况(5分) 程序设计能力(10分) 团队合作精神(5分) 课题功能实现情况(10分) 算法设计合理性(10分) 用户界面设计(10分) 报告书写认真程度(5分) 内容详实程度(10分) 文字表达熟练程度(10分) 回答问题准确度(10分) 简短评语
教师签名:
年月日 评分等级 备注 评分等级有五种:优秀、良好、中等、及格、不及格
课题题目
二叉树基本操作与哈夫曼编码译码系统的设计
课题内容和要求
创建一棵二叉树,分别实现先序、中序和后序遍历一棵二叉树,计算二叉树结点个数等操作。设计哈夫曼编码/译码系统。能成功演示二叉树的有关运算,运算完毕后能成功释放二叉树所有结点占用的系统内存。
二、需求分析
我们根据需求得到以上的菜单,以链表方式存储二叉树,以插入二叉搜索树的方式,将数据一个一个地插入二叉树,以递归的方式分别实现先、中、后三种方式的遍历和计算二叉树的高度,删除二叉树时,先搜索找到那个节点,若有两个子节点,查找中序遍历直接后继节点,之后常规的替代删除操作,最后是哈夫曼树的实现,从文件读取字符串的时候,用while循环来得到每个字母的出现次数,得到权值,之后实现哈夫曼树,通过译码函数输出译码序列。
三、概要设计
typedef char Etype;
typedef struct btnode
{
Etype data;
struct btnode * lch,* rch;
int weight;
}btnode;
typedef struct btree
{
struct btnode * root;
}btree;
typedef struct {
int weight;
int parent,lchild,rchild;
}HTNode,*HuffmanTree;
typedef char ** HuffmanCode;
其他的就是各类函数,见下文。
四、详细设计
#includestdio.h
#includestdlib.h
#includestring.h
#includeiostream.h
#includeconio.h
#includefstream.h
typedef char Etype;
typedef struct btnode
{
Etype data;
struct btnode * lch,* rch;
int weight;
}btnode;
typedef struct btree
{
struct btnode * root;
}btree;
btnode * newnode()
{
btnode * p=(btnode*)malloc(sizeof(btnode));
return p;
}
btnode * newnode(Etype e)
{
btnode * p=(btnode*)malloc(sizeof(btnode));
p-data=e;
p-lch=NULL;
p-rch=NULL;
return p;
}
void MAKEBTREE(btree * bt,int x,btree *lt,btree * rt)
{
btnode * p=newnode();
p-weight=x;
p-lch=lt-root;
p-rch=rt-root;
lt-root=NULL;
rt-root=NULL;
bt-root=p;
}
void CREATEBTREE(btree * bt) /*构造一颗空二叉数*/
{
bt-root=NULL;
}
//模仿先序递归遍历方法,建立二叉树
btnode *creat_bt2()
{
btnode *t;
Etype e;
scanf(%c,e);
if(e==#)t=NULL; //对于#值,不分配新结点
else{
t=(btnode *)malloc(sizeof(btnode));
t-data=e;
t-lch=creat_bt2(); //左孩子获得新指针值
t-rch=creat_bt2();
您可能关注的文档
- 夹型滚动轴弯曲模具设计方案书.doc
- 奔驰轿车数据流分析报告.doc
- 大跨度空间钢结构合拢研究报告.doc
- 奥数同余概念附性质+详解过程.doc
- 女性主义与质性研究报告模式.doc
- 女人应该懂得点常识.doc
- 太阳能热水器智能控制器设计方案书.doc
- 如何分析报告论证思路.doc
- 女生漂亮简易气质包发.doc
- 如何删除cookie附flashcookie.doc
- 山西天一大联考2025-2026学年高二上学期期末学情监测语文试题(试卷+解析).docx
- 山西忻州部分学校2025-2026学年高一上学期2月质量检测数学试题(人教B版)(试卷+解析).docx
- 山西运城市2025-2026学年高二第一学期期末调研测试数学试题(试卷+解析).docx
- 陕西省榆林市榆阳区2025-2026学年八年级上学期期末地理试题(试卷+解析).docx
- 陕西西安市碑林区2025-2026学年度第一学期期末八年级生物试题(试卷+解析).docx
- 四川省广元市苍溪县2025-2026年八年级上学期期末道德与法治试题(试卷+解析).docx
- 江苏泰州市姜堰区2025-2026学年七年级上学期1月期末数学试题(试卷+解析).docx
- 江苏省扬州市邗江区2025-2026学年九年级上学期期末考试化学试题(试卷+解析).docx
- 江西上饶市铅山县2025-2026学年第一学期期末考试八年级数学试题(试卷+解析).docx
- 江苏扬州市高邮市2025-2026学年度第一学期期末学业质量监测试题九年级英语(试卷+解析).docx
最近下载
- 【2025秋新版】九上数学期末几何压轴题30道.pdf
- 2025年翔宇无人机研发及应用项目可行性研究报告.docx
- 光伏发电区域水土保持工程设计.docx
- cx3rdk硬件用户手册.pdf VIP
- HIKVISION海康威视海康威视视频监控工程宝标配支持电平检测DS-MDH003.pdf
- 2025年演出经纪人沉浸式互动演出项目风险评估专题试卷及解析.pdf VIP
- 2026年山东职业学院单招《数学》考试历年机考真题集最新附答案详解.docx VIP
- 2025年拍卖师网络拍卖电子证据的固定、保全与司法认定专题试卷及解析.pdf VIP
- 结构力学-龙驭球1-2(20220126013027).pdf VIP
- 2025年互联网营销师CDP平台与大数据技术(Hadoop_Spark)结合专题试卷及解析.pdf VIP
原创力文档

文档评论(0)