给定一个二叉树,返回它的 后序 遍历。 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1] /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *lef ...
分类:
其他好文 时间:
2020-03-14 00:39:36
阅读次数:
75
《大话数据结构》内容简介:数据结构介绍、算法推导大O阶的方法;顺序结构与链式结构差异、栈与队列的应用;串的朴素模式匹配、KMP模式匹配算法;二叉树前中后序遍历、赫夫曼树及应用;图的深度、广度遍历;最小生成树两种算法、最短路径两种算法;拓扑排序与关键路径算法;折半查找、插值查找、斐波那契查找等静态查找 ...
分类:
其他好文 时间:
2020-03-10 21:29:34
阅读次数:
67
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 和之前做的二叉搜素树的中序遍历有相似之处 这个题的思路也是借助二叉搜素树的特性来做。 找到根结点,然后从头遍历直到找到比这个点大的点 左边的为左子树 右边的右子 ...
分类:
其他好文 时间:
2020-03-06 15:45:49
阅读次数:
56
JAVA递归实现线索化二叉树 基础理论 首先,二叉树递归遍历分为先序遍历、中序遍历和后序遍历。 先序遍历为:根节点+左子树+右子树 中序遍历为:左子树+根节点+右子树 后序遍历为:左子树+右子树+根节点 (只要记住根节点在哪里就是什么遍历,且都是先左再右) 线索化 现在有这么一棵二叉树,它的数据结构 ...
分类:
编程语言 时间:
2020-03-05 00:57:55
阅读次数:
88
1. 题目 2. 思路 1. 如下图 发现规律,对于最左边来说,后面所有的集合都是先小后大或者先大后小,如果小大交错那么不符合 2. 使用1中规律确定是否为镜像,结合二叉排序树的特点,用递归建立树 3. 输出树的后序遍历 3. 注意点 1. 发现规律比较困难 2. 树的题目一般都要用递归 4. 代码 ...
分类:
其他好文 时间:
2020-03-02 01:00:34
阅读次数:
54
二叉树的遍历方式有,前序遍历、中序遍历、后序遍历、层序遍历。 恢复二叉树的方式中,一定要有中序遍历。如:可以根据 前序+中序、后序+中序,对二叉树进行恢复。若层序遍历中,对于节点为空的节点予以标识为null,则可以只根据层序遍历恢复出二叉树。 1、前序+中序恢复二叉树: 2、后序+中序恢复二叉树: ...
分类:
其他好文 时间:
2020-03-01 14:23:02
阅读次数:
77
内心OS:我靠啊!!!我就是偷了一下懒!!!把先序遍历的代码COPY了两份,改成了中序和后序遍历。万万没想到啊!我忘了修改函数中递归函数的名字!!!找这个BUG花了我三个小时~~我哭啊~~,我还以为我的知识体系坍塌了呢?!!~ 总结,这是一道模板题,要先记住大体流程,然后反复练习。 输入格式: 第一 ...
分类:
其他好文 时间:
2020-02-29 00:29:44
阅读次数:
57
链接:https://leetcode-cn.com/problems/er-cha-sou-suo-shu-de-hou-xu-bian-li-xu-lie-lcof/ 代码: class Solution { public: bool verifyPostorder(vector<int>& p ...
分类:
其他好文 时间:
2020-02-28 22:40:22
阅读次数:
62
后序遍历与中序遍历,求前序遍历 首先,一点基本常识,给你一个后序遍历,那么最后一个就是根(同理前序遍历,第一个是根) 那么这个算法的核心就是不断的求根; 接下来我用一个实例来说明怎样进行求根: 例如以上,给出后序遍历和中序遍历,求前序遍历 首先根据后序遍历的最后一个就是根,可以知道4是根,以此可将前 ...
分类:
其他好文 时间:
2020-02-27 19:26:23
阅读次数:
161
```java package MyExc; import java.util.Stack; class TreeNode{ int data; TreeNode left; TreeNode right; } public class BinaryTree { public void preOrd... ...
分类:
其他好文 时间:
2020-02-23 22:36:58
阅读次数:
74