第十周项目1(2)-二叉树构造算法的验证
来源:互联网 发布:诚哥战斗过的天台淘宝 编辑:程序博客网 时间:2024/06/16 05:48
btree.h
#ifndef BTREE_H_INCLUDED#define BTREE_H_INCLUDED#define MaxSize 100typedef char ElemType;typedef struct node{ ElemType data; //数据元素 struct node *lchild; //指向左孩子 struct node *rchild; //指向右孩子} BTNode;void CreateBTNode(BTNode *&b,char *str); //由str串创建二叉链BTNode *FindNode(BTNode *b,ElemType x); //返回data域为x的节点指针BTNode *LchildNode(BTNode *p); //返回*p节点的左孩子节点指针BTNode *RchildNode(BTNode *p); //返回*p节点的右孩子节点指针int BTNodeDepth(BTNode *b); //求二叉树b的深度void DispBTNode(BTNode *b); //以括号表示法输出二叉树void DestroyBTNode(BTNode *&b); //销毁二叉树#endif // BTREE_H_INCLUDEDbtree.cpp
#include <stdio.h>#include <malloc.h>#include "btree.h"BTNode *CreateBT1(char *pre,char *in,int n)/*pre存放先序序列,in存放中序序列,n为二叉树结点个数,本算法执行后返回构造的二叉链的根结点指针*/{ BTNode *s; char *p; int k; if (n<=0) return NULL; s=(BTNode *)malloc(sizeof(BTNode)); //创建二叉树结点*s s->data=*pre; for (p=in; p<in+n; p++) //在中序序列中找等于*ppos的位置k if (*p==*pre) //pre指向根结点 break; //在in中找到后退出循环 k=p-in; //确定根结点在in中的位置 s->lchild=CreateBT1(pre+1,in,k); //递归构造左子树 s->rchild=CreateBT1(pre+k+1,p+1,n-k-1); //递归构造右子树 return s;}int main(){ ElemType pre[]="ABDGCEF",in[]="DGBAECF"; BTNode *b1; b1=CreateBT1(pre,in,7); printf("b1:"); DispBTNode(b1); printf("\n"); return 0;}
阅读全文
0 0
- 第十周项目1 — 验证算法(2)二叉树构造算法的验证
- 第十一周--项目1 - 二叉树算法验证(2)二叉树构造算法的验证
- 第十周 项目2- 二叉树构造算法的验证
- 第十周 项目一 验证算法 (2)二叉树构造算法的验证
- 第十一周实践项目1—验证算法(2)二叉树构造算法的验证
- 第十一周项目1-验证算法(2)二叉树构造算法的验证
- 第十一周项目1-验证算法(2)二叉树构造算法的验证
- 第十一周项目1 -验证算法(2)--二叉树的构造算法验证
- 第十一周项目1-验证算法(2)-二叉树构造算法的验证
- 第十一周项目1-验证算法(2)二叉树构造算法的验证
- 第十一周项目1-验证算法(2)-二叉树构造算法的验证
- 【第十一周 项目1-验证算法(2)二叉树构造算法的验证】
- 第十一周项目1 -验证算法(2)--二叉树的构造算法验证
- 第十一周项目1验证算法—(2)二叉树构造算法的验证
- 第十周项目1(2)---二叉树构造算法的验证
- 第十周项目1(2)-二叉树构造算法的验证
- 第十周项目1(2)二叉树构造算法的验证
- 第十一周项目一-二叉树算法验证(2)二叉树构造算法的验证
- VMware 要让“云”隐形
- Hashtable和HashMap
- 生动描述三次tcp握手
- Angular拦截器
- mysql 主从从M-S1-S11 ,S1数据库15张表的数据被删除掉了几千行
- 第十周项目1(2)-二叉树构造算法的验证
- FXML与SceneBuilder开发中TableView控件的使用
- 开源框架MXNet | 环境变量配置(显存)
- 项目部署时,报Jstl异常:org.apache.jasper.JasperException: This absolute uri
- STM32开发板实现Pixhawk无人机GPS跟踪
- xml字符转译
- 机器学习入门:线性回归及梯度下降
- leetcode Symmetric Tree
- 满足条件的进制转换,并输出