第十周项目一 二叉树构造算法的验证---中序和后序序列构造二叉树(3)
来源:互联网 发布:notorious b.i.g 知乎 编辑:程序博客网 时间:2024/06/10 05:57
/*烟台大学 计算机与控制工程学院文件名称:二叉树构造算法的验证作 者:胡德杰完成日期:2017年11月30号版 本 号:v1.1.30*/#include <stdio.h>#include <malloc.h>#include "btree.h"BTNode *CreateBT2(char *post,char *in,int n)/*post存放后序序列,in存放中序序列,n为二叉树结点个数,本算法执行后返回构造的二叉链的根结点指针*/{ BTNode *s; char r,*p; int k; if (n<=0) return NULL; r=*(post+n-1); //根结点值 s=(BTNode *)malloc(sizeof(BTNode)); //创建二叉树结点*s s->data=r; for (p=in; p<in+n; p++) //在in中查找根结点 if (*p==r) break; k=p-in; //k为根结点在in中的下标 s->lchild=CreateBT2(post,in,k); //递归构造左子树 s->rchild=CreateBT2(post+k,p+1,n-k-1); //递归构造右子树 return s;}int main(){ ElemType in[]="DGBAECF",post[]="GDBEFCA"; BTNode *b2; b2=CreateBT2(post,in,7); printf("b2:"); DispBTNode(b2); printf("\n"); return 0;}
知识点总结:二叉树构造算法的验证。
阅读全文
0 0
- 第十周项目一 二叉树构造算法的验证---中序和后序序列构造二叉树(3)
- 第十一周项目1--(2)二叉树构造算法的验证--由后序序列和中序序列构造二叉树
- 第十周项目一 二叉树构造算法的验证---先序和中序序列构造二叉树(2)
- 第十一周项目一 验证算法(2)二叉树构造算法的验证(后序和中序)
- 第十一周项目2 二叉树构造算法--中序序列和后序序列构造二叉树
- 第十一周项目1--(2)二叉树构造算法的验证--由先序序列和中序序列构造二叉树
- 第十一周项目一 验证算法(2)二叉树构造算法的验证(先序和中序)
- 第11周项目1-(2)二叉树构造算法的验证、由后序序列和中序序列构造二叉树
- 第十一周【项目一-(2-2)由后序序列和中序序列构造二叉树】
- 第十一周项目1-(2)二叉树构造的算法验证--由后序和先序构造二叉树
- 第十一周项目1-(2)二叉树构造的算法验证--由后序和先序构造二叉树
- 第十周项目1(2)-由后序序列和中序序列构造二叉树
- 第十一周项目一-二叉树算法验证(2)二叉树构造算法的验证
- 第十一周 项目一 -二叉树算法验证(2)二叉树构造算法的验证
- 第十周 项目一 验证算法 (2)二叉树构造算法的验证
- 第十一周--二叉树构造算法的验证【后中】
- 第十一周项目一二叉树构造算法的验证
- 第11周项目1-(2)二叉树构造算法的验证、由先序序列和中序序列构造二叉树
- AAN算法描述及其实现
- 使用navigator.userAgent.toLowerCase()判断客户端类型
- 编辑距离
- 设计模式学习之创建模式之单例模式(三)
- QT普通文本编辑
- 第十周项目一 二叉树构造算法的验证---中序和后序序列构造二叉树(3)
- YII2.0 Activeform表单组件的使用方法
- Bootstrap双列表框
- ubuntu 16.04 安装docker-ce并配置加速器,让docker运行一个桌面系统
- LeetCode--455. Assign Cookies
- 继承、重写知识点汇总---
- Halide学习笔记----Halide tutorial源码阅读3
- 数据结构第五周项目4--数值转换
- VS2015 代码缩略图的设置