欢迎来到天天文库
浏览记录
ID:31045910
大小:78.50 KB
页数:3页
时间:2019-01-05
《河南工业大学实验报告_实验二非线性结构(一)——树》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、XXX大学实验报告课程名称实验项目实验二沖线性结构(-)——树院系专业姓名学号指导老师日期批改日期成绩一实验目的1.掌握二叉树的建立与递归遍历算法。2.理解哈夫曼树及其应用;掌握生成哈夫曼树的算法;哈夫曼编码;哈夫曼译码。二实验内容及要求实验内容:下列两题二选一:1.实现二叉树的建立与递归遍历算法;2.建立huffman编码树;编码指定字符串;译码指定码流为字符串。实验要求:题目1:键盘输入数据;屏幕输出运行结果。题目2:键盘输入数据;屏幕输出运行结果。运行显示结果为:输入一个字符串,生成码流;输入码流,
2、译码为字符串。三实验过程及运行结果#include〈stdio.h>#inelude★includetypedefintDataTypc;typedefstructNode{DataTypedata;structNode*LChild;structNode*RCh订d;}BitNode,*BitTree;voidCreatBiTree(BitTree*bt){charch;ch=gctchar();if(ch-/)*bt二NULL;else*bt二(BitTree)m
3、al1oc(sizeof(BitNode));(*bt)->data=ch;CreatBiTree(&((*bt)->LChiId));CreatBiTree(&((*bt)->RChild));}}voidVisit(charch){printf("%cch);}voidPreOrder(BitTreeroot){if(root!=NULL){Visit(root->data);PreOrder(root-〉LCh订d);PreOrder(root-〉RChild);}}voidInOrder(BitT
4、reeroot){if(root!=NULL){InOrder(root->LChild);Visit(root->data);TnOrder(root-〉RChild);}}voidPostOrder(BitTreeroot){if(root!二NULL){PostOrder(root->LChild);PostOrder(root->RChild);Visit(root->data);}}voidmain(){BitTreeT;inth;intlayer;inttreeleaf;layer=O;pri
5、ntfC请以先序遍历序列输入二叉树屮的元素,其屮•代表空子树:『);CreatBiTree(&T);printf(,z先序遍历序列为:〃);PreOrder(T);printf(z,中序遍历序列为:〃);InOrder(T);printf(,z后序遍历序列为:〃);PostOrder(T);S3C:Windowssystem32cmd.exeacC■••••••■f.列列列g.宇宇宇e.历历历d扁-扁j扁-■・■>abc先中后二叉树中的元素,cdegfedgfafgdba其中•代表空子树:
6、请按任意键继续・・.四调试情况、设计技巧及体会建立这个二叉链表是按照完全二叉树的性质,输入数据的时候应该完全按照完全二义树的编号顺序输入数据,不然会造成输出错误或者代码不能正常运行。
此文档下载收益归作者所有