二叉树的基本操作的实验报告

更新时间:2023-06-30 14:45:02 阅读: 评论:0

学会自律
课程名称
数据结构
实验名称
二叉树
实验时间
12月2日星期二下午
实验地点
数学院楼504
 
信息1班
 
 
一、实验目的与要求
一.实验目的
  1.熟练掌握二叉树的定义和基本操作;
  2.灵活运用二叉树解决实际问题。
二.实验内容
  1.实现二叉链表的定义和基本操作;秦篆
  2.试利用二叉树实现哈夫曼编码和译码。
二、实验内容与步骤
一.实验内容
1.实现二叉树的的基本操作:建树,求深度,中序遍历,层次遍历
十大品牌漆2.结合表达式求值算法,建立表达式树。
拧成一股3.记录实验过程并总结实验经验,完成实验报告。
二.实验步骤
1.新建一个文件夹,并命名。
2.将实验材料(附件)中的c1.h和SqStack.cpp、LinkQueue.cpp、BiTree.cpp文件复制到新文件夹中。
炸花生米的做法  其中,c1.h中包含程序中常用的头文件及宏定义,以后每次都要记得将该文件包括到你的源程序中。
  sqstack.cpp中包含线性表顺序存储结构的定义和部分基本操作的实现。
  LinkQueue.cpp中包含顺序栈的定义。
  BiTree.cpp中包含链式队列的定义。
3.新建一个Main4.cpp源文件(主文件)中,在其中输入以下三个命令(语句)及一个空的main函数
  typedef char SElemType;
  #include "c1.h"
  #include "sqstack.cpp"
  main()
  {
  }
4.在BiTree.cpp中补充下列函数的定义:CreateBiTree,BiTreeDepth,InOrderTraver1(递归),
  InOrderTraver2(非递归,要利用栈),LevelOrderTraver(要利用队列)。
春天的图片大全
  请注意:写完一个函数后,应回到进行调用及编译,检查错误。测试正确后,再开始写其它函数。
5.在main函数中编写一个数字菜单,供用户选择:建树,求深度,中序遍历,层次遍历等功能,并显示结果。
  编译运行,检查结果是否正确。
6.新建一工程,结合表达式求值的过程,实现创建表达式树的功能。
三、实验结果与问题
实验运行结果截图:
问题:
1. CreateBiTree函数在建树时对输入序列有何要求?
答:输入序列为先序序列,叶子节点之后要输入两个空格表示没有左右孩子
2. 中序遍历递归算法中,递归基本项(终止条件)是什么?
答:终止的条件为左右孩子结点为空
3. 中序遍历非递归算法中,如何找到中序遍历序列中的第一个结点?
答:while(GetTop(S,p)&&p)
自立是什么意思          Push(S,p->lchild);向左走到尽头,即为中序遍历序列中的第一个结点
4. 在建表达式树时,栈元素应该定义为何种数据类型?
答:字符型。
指导老师
姚 兰
评分情况
制片人是干什么的

本文发布于:2023-06-30 14:45:02,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1070361.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:实验   定义   遍历   序列   表达式   实现
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图