过程控制软件技术基础课程实验报告
实验项目:二叉树的建立和遍历
姓名: 戚风亮
学号: 1008180230
指导教师: 任登凤
1. 实验目的
通过自主设计实验,掌握过程控制软件的基础理论知识,本实验具体表现为二叉树的建立和遍历,为以后计算机控制的软件设计提供基础。提高逻辑思维方式,培养应用可视化编程工具开发计算机软件的能力。
2. 实验内容
本文主要介绍二叉树的建立和遍历。所使用的编程软件为matlab2010版本,主要使用其中的GUI功能,完成可视化界面操作。从更直接的角度感受二叉树的建立和遍历。
二叉树的建立和遍历包含两个方面:建立和遍历。其中建立包括输入二叉树的每一个结点的元素,以及二叉树每一个结点的随机存储地址。与此同时,更重要的是创建两个指针域:左指针域L和右指针域R,在本次实验中,采用产生随机数的方式生成随机存储地址,采用两个数组代表两个指针域。二叉树的遍历采用递归函数的方式,本实验中采用三个函数Front,Middle,Behind分别实现前序、中序以及后序的功能。
…… …… 余下全文
二叉树的应用
一、实验目的
1.了解二叉树的结构特点及有关概念,掌握二叉树建立的基本算法
2.了解二叉树遍历的概念,掌握遍历二叉的算法
3.进一步掌握树的结构及非线性特点,递归特点和动态性。
二、实验内容
二叉树的实现和运算
三、实验要求
1.用C++/C完成算法设计和程序设计并上机调试通过。
…… …… 余下全文
算法与数据结构实验报告
——二叉树
课程名称:算法与数据结构
实验项目名称:满二叉树的建立与遍历
实验时间:20xx年x月x日
班级:电科1301 姓名:侯炜 学号:1402130126 实验目的:熟悉使用线性表结构,设计并理解多项式算法。 实验环境:Visual C++6.0,win7
实验步骤:
一.建立基本数据结构及程序架构
二.设计多项式各类操作的算法
三.调试程序,修改错误
四.总结得失
实验结果:成功使用中序输入建立二叉树并进行相应的遍历输出。 实验心得:
① 队列结构作用之一:用于储存“临时数据”以便后续输出 ② 满二叉树是仅仅输入一次遍历顺序就得出结果的先决条件
具体实验步骤:
一.建立基本数据结构及程序架构
1.1数据结构
确定所需要的对二叉树进行抽象的数据类型:树节点。建立数据结构如下: //----------------数据结构
typedef struct treenode
{
char data;
struct treenode* ltree;
struct treenode* rtree;
}Tnode;
…… …… 余下全文
专业班级:计算机科学与技术
姓名:。。。。。。
学号:。。。。。。。
上机学习二叉树。
实现二叉树的各项算法并掌握其用法如二叉树的构造,先中后序遍历,层次遍历等等
3.1 设计算法
1.二叉树的构造:通过对二叉树的先序序列的扩展来构造二叉树
2.求二叉树的高度:二叉树的高度等于子树高度加一,递归求出二叉树高度。
3二叉树的层次遍历:初始化队列,使根节点进队。下面开始循环,终止条件为队列为空。是队头结点出队,并使它的左孩子和右孩子一次进队(如果存在)
4.求二叉树叶子结点:遍历二叉树,如果左孩子和右孩均不存在,则该结点为叶子结点。
数据结构的选择:学习二叉树结构,利用队列实现其中的层次遍历。
概要设计:利用类将二叉树和其属性封装起来,定义结构体变量作为结点。
通过课堂学习以及课后的上机实习,我学习到了树和二叉树的性质,以及相关算法。如二叉树的遍历,求二叉树的高度。并在这些算法实现的过程中对递归有了更加深的了解,并且认识到了递归的重要性
…… …… 余下全文
实验四 二叉树的操作
班级:计算机1002班
姓名:**
学号:**
完成日期:20XX.6.14
题目:对于给定的一二叉树,实现各种约定的遍历。
一、实验目的:
(1)掌握二叉树的定义和存储表示,学会建立一棵特定二叉树的方法;
(2)掌握二叉树的遍历算法(先序、中序、后序遍历算法)的思想,并学会遍历算法的递归实现和非递归实现。
二、实验内容:构造二叉树,再实现二叉树的先序、中序、后序遍历,最后统计二叉树的深度。
三、实验步骤:
(一) 需求分析
1. 二叉树的建立首先要建立一个二叉链表的结构体,包含根节点和左右子树。因为树的每一个左右子树又是一颗二叉树,所以用递归的方法来建立其左右子树。二叉树的遍历是一种把二叉树的每一个节点访问并输出的过程,遍历时根结点与左右孩子的输出顺序构成了不同的遍历方法,这个过程需要按照不同的遍历的方法,先输出根结点还是先输出左右孩子,可以用选择语句来实现。
2.程序的执行命令为:
1)构造结点类型,然后创建二叉树。
2)根据提示,从键盘输入各个结点。
3)通过选择一种方式(先序、中序或者后序)遍历。
…… …… 余下全文