西南科技大学:《数据结构》课程教学资源(教案讲义)实验四 树(一)

、实验目的 1.进一步掌握指针变量,动态变量的含义 2.掌握二叉树的结构特征 掌握用指针类型描述,访问二叉树的运算 ,试验内容 编写以二叉树链表作存储结构的二茬树的建立,及三种遍历算法的实现。 基本思想设二叉树的根指针为t,且以二叉树连表表示,以先序遍历建立该二叉树, 然后用中序、后序遍历算法对该树进行遍历,输出遍历结果。以下图所示的二叉树为例, 先序遍历建树的关键在与确定输入数据序列,即可建立树,其余就非常简单了 (2 7 算法实现 #define null o typedef struct node struct node *lchild. rchild itree creato∥建立二又树(先序遍历的应用) scanf(“%d”,&x); if(x==0) t=malloc(sizeof(bitree)); t->data=x
一、实验目的 1. 进一步掌握指针变量,动态变量的含义。 2. 掌握二叉树的结构特征 3. 掌握用指针类型描述,访问二叉树的运算 二,试验内容 编写以二叉树链表作存储结构的二茬树的建立,及三种遍历算法的实现。 [基本思想]设二叉树的根指针为 t,且以二叉树连表表示,以先序遍历建立该二叉树, 然后用中序、后序遍历算法对该树进行遍历,输出遍历结果。以下图所示的二叉树为例, 先序遍历建树的关键在与确定输入数据序列,即可建立树,其余就非常简单了。 [算法实现] #define null o typedef struct node { int data; struct node *lchild ,rchild; } bitree; bitree *creat()//建立二叉树(先序遍历的应用) { bitree *t; int x; scanf(“%d”,&x); if(x==0) t=null; else { t=malloc(sizeof(bitree)); t->data=x; 4 7 5 8 9 2 3 11 6 + 12 1 3

t->lchild=creato .>rchild=creat(; return t; void inorder(t)/中序遍历二叉树 bitree"t; (t:=null) der(t->lchild); printf(t->data); void postorder(t∥后序遍历二叉树 if(t!=null) postorder(t->rchild); root-creat( inorder(root); postorder(root);
t->lchild=creat(); t->rchild=creat(); } return t; } void inorder(t)//中序遍历二叉树 bitree *t; { if(t!=null) { inorder(t->lchild); prinrf(t->data); inorder(t->rchild); } } void postorder(t)//后序遍历二叉树 bitree *t; { if(t!=null) { postorder (t->lchild); postorder (t->rchild); prinrf(t->data); } } main() { bitree *root; root=creat(); inorder(root); postorder (root); }
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验四 树(二).doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验六 查找.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验五 图.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验二 栈和队列.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验三 数组和广义表.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验七 排序.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验一 线性表(二).doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验一 线性表(一).doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)Turbo C程序开发环境简介.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)附录D常见错误信息表.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)使用说明.doc
- 西南科技大学:《数据结构》课程教学资源(PPT课件讲稿)DOS操作系统.ppt
- 《C语言序设计》第一章 数据结构(冯毅).ppt
- 《C语言序设计》第八章 指针(冯毅).ppt
- 《C语言序设计》第七章 编译预处理(冯毅).ppt
- 《C语言序设计》第六章 函数(冯毅).ppt
- 《C语言序设计》第五章 数组(冯毅).ppt
- 《C语言序设计》第四章 C程序流程设计(冯毅).ppt
- 《C语言序设计》第三章 数据输入与输出(冯毅).ppt
- 《C语言序设计》第二章 数据描述(冯毅).ppt
- 西南科技大学:《数据结构》课程教学资源(教案讲义)Turbo C 程序开发环境简介.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)实验指导书.doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)课程教学资源(实验指导目录,主讲:朱战立、李学俊).doc
- 西南科技大学:《数据结构》课程教学资源(教案讲义)预备知识.doc
- 西南科技大学:《数据结构》课程教学资源(PPT课件讲稿)总复习(主讲:朱战立、李学俊).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第一章 绪论(主编:严蔚敏:吴伟民).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第十章 内部排序.ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第二章 线性表.ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第三章 栈和队列(3.1-3.2,3.4).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第三章 栈和队列 3.3 队列的表示和实现.ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第四章 串.ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第五章 数组和广义表(一).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第五章 数组和广义表(二).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第六章 树和二叉树(6.1-6.3).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第六章 树和二叉树(6.4-6.6).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第六章 树和二叉树(6-3)二叉树.ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第七章 图(7.1-7.3).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第七章 图(7.4-7.7).ppt
- 清华大学:《数据结构》课程教材PPT教学课件(C语言版)第九章 查找.ppt
- 西南科技大学:《数据结构》课程教学资源(教案讲义)习题.doc