已知一棵二叉树的中序序列和后序序列,写一个建立该二叉树的二叉链表存储结构的算法...
已知一棵二叉树的中序序列和后序序列,写一个建立该二叉树的二叉链表存储结构的算法
#define N 10 //二叉树节点的个数
char postorderstr[]={};//后序序列
char inorderstr[]={};//中序序列
Stastus Creat_BiTree(BiTree &T,int s1,int e1,int s2,int e2)
//s1,e1为子树序列在中序序列中的起始位置,s2,e2为子树序列在后序序列中的起始位置
{
if(!(T=(BiTNode *)malloc(sizeof (BiTNode)))) exit(OverFollow)
T->data=postorderstr[e2];
T->Lchild=T->Rchild=null;
if(s1!=e1)//当s1!=e1时为非叶子节点,创建子树
{
t=FindPosition(postorderstr[e2]);
if(t!=s1)//当t=s1时,该节点没有左子树
{CreatBiTree(T->Lchild,s1,t-1,s2,s2+(t1-1-s1)); }
//子树序列长度是一定的,所以在中序中易知子树序列长度为t1-1-s1,那么在后序序列中的起始位置也易知
if(t!=e1)//当时,该节点没有右子树
{CreatBiTree(T->Rchild,t1+1,e1,(e2-1)-(e1-(t+1)),e2-1);}
//注释同上
}
}
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
intFindPosition(char c)
//查找字符c在中序序列中的位置
{
for(i=0;i<N;i++)
{
if(inorderstr[i]==c)
break;
}
return i-1;
}
已知一棵二叉树的中序序列和后序序列,写一个建立该二叉树的二叉链表存储结构的算法...相关推荐
- 二叉树的二叉链表存储结构构建以及先序遍历
#include <stdio.h> #include <stdlib.h> #define OK 1 #define ERROR -1 typedef int TElemTy ...
- 西工大NOJ数据结构理论——015.建立二叉树的二叉链表存储结构(严6.70)
我相信,大家都已经了解了这道题的背景,以及明白了我们需要做的事情. 对于这道题的背景,相信大家都熟悉,所以就不说了. 关于我们需要做的事情,大家也已经有了自己的思路.所以,我只在下面简短的写一写我的思 ...
- 6-2-二叉树(二叉链表存储)-树和二叉树-第6章-《数据结构》课本源码-严蔚敏吴伟民版...
课本源码部分 第6章 树和二叉树 - 二叉树(二叉链表存储) --<数据结构>-严蔚敏.吴伟民版 源码使用说明 链接☛☛☛ <数据结构-C语言版>(严蔚敏,吴 ...
- JAVA-集合作业-已知有十六支男子足球队参加2008 北京奥运会。写一个程序,把这16 支球队随机分为4 个组。采用List集合和随机数...
第二题 已知有十六支男子足球队参加2008 北京奥运会.写一个程序,把这16 支球队随机分为4 个组.采用List集合和随机数 2008 北京奥运会男足参赛国家: 科特迪瓦,阿根廷,澳大利亚,塞尔维亚 ...
- 已知有十六支男子足球队,参加2008 北京奥运会。写一个程序,把这16 支球队随机分为4 个组。
已知有十六支男子足球队参加2008 北京奥运会.写一个程序,把这16 支球队随机分为4 个组. 要求:采用List集合和随机数放入map集合中,遍历map集合打印结果: 例如:第一组:中国 美国 澳大 ...
- 已知有十六支男子足球队参加2008 北京奥运会。写一个程序,把这16 支球队随机分为4 个组
import java.util.ArrayList; import java.util.List; /** * 已知有十六支男子足球队参加2008 北京奥运会.写一个程序,把这16 支球队随机分为 ...
- 数据结构-二叉链表存储的二叉树(利用先序遍历)
树形结构是一类重要的非线性数据结构,其中以树和二叉树最为常用.对于每一个结点至多只有两课子树的一类树,称其为二叉树.二叉树的链式存储结构是一类重要的数据结构,其形式定义如下: 而二叉树的前序.中序遍历 ...
- 已知有十六支男子足球队参加2008 北京奥运会。 写一个程序,把这16 支球队随机分为4 个组,每组4只球队。采用List集合和随机数。
已知有十六支男子足球队参加2008 北京奥运会. 写一个程序,把这16 支球队随机分为4 个组,每组4只球队.采用List集合和随机数. package com.qianfeng._wy;import ...
- 已知有十六支男子足球队参加2008北京奥运会。写一个程序,把这16支球队随机分为4个组。
package com.lovo.homework;import java.util.LinkedList; import java.util.List;public class Homework3 ...
最新文章
- 百万数据报表读取:解决方案及原理分析
- STL泛型编程之迭代器
- Android 图片缓存机制
- 图像3A算法及伽马校正原理及部分实现
- Windows Embedded 7 最简便EWF系统制作方案
- 软件供应链安全现状分析与对策建议
- 深度学习与PyTorch入门实战教程
- 关于程序员的冷笑话 (转载www.lenxiaohuadaquan.net )
- 基于STM32的无损压缩算法miniLZO移植,压缩率很高,20KB随机数压缩到638字节,耗时275us
- 如何生成SHA2常数序列
- Ps的动感模糊和扭曲效果
- 钉钉在线课程开启屏幕共享时电脑蓝屏问题解决办法
- (1)从1开始写一个操作系统
- 【JAVA 文件概述】
- 投稿经验分享之五:申请专利
- mysql随机生成数据并插入_python生成随机数据插入mysql
- Uncaught ReferenceError: UE is not defined at zh-cn.js:8
- 顺丰科技笔试问题之最多的分值个数问题
- 使用Python编写爬虫程序(代码详细注释),获取彼岸图网的图片
- JpaRepository 查询规范