根据一棵树的中序遍历与后序遍历构造二叉树。 注意:你可以假设树中没有重复的元素。 例如,给出 中序遍历 inorder = [9,3,15,20,7]后序遍历 postorder = [9,15,7,20,3]返回如下的二叉树: 3 / \ 9 20 / \ 15 7 算法:跟上一题类似的算法。需要 ...
分类:
其他好文 时间:
2019-07-10 23:11:20
阅读次数:
220
二叉树的遍历 我用下图的树为例,做树的遍历: 二叉树结构 树节点的定义: 中序遍历 先处理左子树,然后处理当前节点,再处理右子树。 对于一颗二叉查找树,所有的信息都是有序排列的,中序遍历可以是信息有序输出,且运行时间为O(n)。 递归实现中序遍历: 输出结果:5 2 7 1 9 3 6 4 8 后序 ...
分类:
编程语言 时间:
2019-07-08 19:21:00
阅读次数:
115
常见的数据结构链表、队列、栈、二叉树、堆使用内置结构实现高级数据结构,比如内置的list/deque实现栈 链表有单链表、双链表、循环双端链表如何使用python来表示链表结构 实现链表常见操作,比如插入节点,反转链表,合并多个链表 leetcode练习常见链表题目 队列是先进先出结构实现队列的ap ...
分类:
其他好文 时间:
2019-07-08 09:30:29
阅读次数:
134
description analysis 堆$+$树上倍增 考虑后序遍历搞出$dfs$序,那么要填肯定是从$dfs$序开始填 把每个点是序里第几位看成优先级,用小根堆来维护当前空着的优先级最小的点 插入每次弹$x$次堆顶,然后把这些点全部打上标记,注意标记一定是先打儿子再打父亲 然后找一个点深度最浅 ...
分类:
其他好文 时间:
2019-07-03 16:39:36
阅读次数:
66
二叉树是一种数据结构。其特点是: 1.由一系列节点组成,具有层级结构。每个节点的特性包含有节点值、关系指针。节点之间存在对应关系。 2.树中存在一个没有父节点的节点,叫做根节点。树的末尾存在一系列没有子节点的节点,称为叶子节点。其他可以叫做中间节点。 3.树的根节点位于第一层,层级数越大,节点位置越 ...
分类:
编程语言 时间:
2019-07-03 13:34:47
阅读次数:
93
题目链接 : https://leetcode cn.com/problems/flatten binary tree to linked list/ 题目描述: 给定一个二叉树, "原地" 将它展开为链表。 示例: 例如,给定二叉树 将其展开为: 思路: 其实对于这种题目,递归不太好想的,可以有个 ...
分类:
其他好文 时间:
2019-07-01 21:32:29
阅读次数:
150
主要内容: 1. 二叉树遍历(先序、中序、后序、宽度优先遍历)的迭代实现和递归实现; 2. 二叉树的深度,二叉树到叶子节点的所有路径; 首先,先定义二叉树类(python3),代码如下: 内容1:二叉树的遍历 二叉树的遍历分深度优先遍历(DFS)和宽度优先遍历(BFS)。其中深度优先遍历又分为先序遍 ...
分类:
编程语言 时间:
2019-06-25 16:42:49
阅读次数:
110
数据结构【基础知识点总结】 一、数据 二、数据元素 三、数据对象 四、数据结构 五、数据的逻辑结构 六、基本的数据结构 七、数据的存储结构 八、算法 时间复杂度 定义:设问题的规模为n,把一个算法的时间耗费T(n)称为该算法的时间复杂度,它是问题规模为n的函数。 常用的算法的时间复杂度的顺序:(比较 ...
分类:
其他好文 时间:
2019-06-23 14:06:30
阅读次数:
85
题目描述 输入一系列整数,建立二叉排序数,并进行前序,中序,后序遍历。 输入 输入第一行包括一个整数n(1 1 2 2 8 15 4 21 10 5 39 样例输出 2 2 2 8 15 8 15 15 8 21 10 5 39 5 10 21 39 5 10 39 21 瞎搞的。。。 includ ...
分类:
编程语言 时间:
2019-06-23 10:24:07
阅读次数:
119