题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 基本思想:在中序序列中找到根节点的位置,根结点左边是 ...
分类:
其他好文 时间:
2017-03-30 20:37:58
阅读次数:
236
package com.m01.program.maven_1; import java.util.Stack; public class TestBinaryTree { public static void main(String[] args) { TreeNode node=getBinar... ...
分类:
其他好文 时间:
2017-03-05 00:11:06
阅读次数:
167
题目:根据中序和后序遍历构建二叉树 思路:利用递归加上分治的思想。先找到根节点的值,然后在根据中序遍历找到根节点的左右两边的值,然后在递归的处理左右两边的左右子树。这里的关键在于怎么处理递归的左右子树的范围,代码里面详细解释 代码: class Solution { public: TreeNode ...
分类:
其他好文 时间:
2017-02-03 22:05:40
阅读次数:
232
这里采用的是链式存储,每个结点包含三个属性(指向左右孩子的指针和本结点的数据),如果想了解顺序存储二叉树,可以参考http://www.cnblogs.com/-beyond/p/6065189.html 采用先序递归创建二叉树,叶子的左右孩子链域为NULL 输入的顺序为:abd--e--c-f-- ...
分类:
其他好文 时间:
2016-12-19 21:45:22
阅读次数:
219
1、定义与基本术语 树的结构定义 其他表示树的方法: 其他术语: 2、二叉树 1)定义: 性质: 2)满二叉树与完全二叉树 3、存储结构 4、遍历二叉树 伪代码 中序遍历非递归算法 前序遍历构建二叉树 5、线索二叉树 中序遍历线索二叉树 后序线索二叉树 中序遍历二叉线索树 非递归算法 6、树和森林 ...
分类:
其他好文 时间:
2016-12-19 10:46:53
阅读次数:
199
1.#include <stdio.h>#include <stdlib.h>#include "BTree.h"/* run this program using the console pauser or add your own getch, system("pause") or input ...
分类:
其他好文 时间:
2016-12-10 19:36:42
阅读次数:
242
对二叉树的一系列操作都是建立在先将二叉树构造出来的前提上。大四考研的某天早上偷偷躲在宿舍敲二叉树的代码,也是醉醉的。学习就应该趁年轻,老了就学不动了。 首先是对二叉树的节点的一个声明: 然后我是打算用递归外加先序的方式对二叉树进行构建的,也就对输入字符串提出一个要求: 构建二叉树的函数: 同时为了将 ...
分类:
其他好文 时间:
2016-11-14 11:41:10
阅读次数:
180
非递归按照 层序 创建二叉树,利用 队列(即可先进先出特点)存放已访问的结点元素的地址。 初始化:front=rear= -1; 每储存一个结点元素 rear+1 ,利用 rear%2==0 来使 front+1 回车表示结点输入完毕 该图为 第一次执行到 构建右孩子时的示意图: ...
分类:
编程语言 时间:
2016-11-05 20:18:49
阅读次数:
136
二叉树的基本操作: 1.创建二叉树 2.销毁二叉树 3.遍历二叉树:1)前序遍历 2)中序遍历 3)后序遍历 4)层次遍历 4.搜索二叉树 5.删除子叶 6.插入子叶 7.获取左/右子叶的值 8.获取树深度 9.获取叶子结点数 1.创建二叉树 这里创建的是链式存储结构的二叉树,包含数据域,左右两结点 ...
分类:
其他好文 时间:
2016-10-28 20:13:42
阅读次数:
252