数据结构(持续更新……)

二叉树中遍历问题:

前序遍历:根节点-->左子树-->右子树

中序遍历:左子树 --> 根节点 ->右子树

后序遍历: 左子树 ->右子树 --> 根节点

例:

中序遍历序列为BADC

前序遍历序列为ABCD

根为A

左子树为B

右子树为DC(中序)/CD(前序)

继续分解右子树,得到右子树根为C,结合DC和CD得出右子树的左孩子为D

(这里之前说错了,这里应该是左孩子,已更正 )

(分析过程:CD是前序,根是C,DC是中序,在C前的只有可能是左孩子)

树为

A

B       C

D

后序遍历为BDCA

时间: 2024-11-03 21:04:10

数据结构(持续更新……)的相关文章

常用集合类数据结构(持续更新中)

零.约定 1.  如果没有特殊说明,均指jdk 6,7,8一样 2.  源码分析出来的,有错误,请务必告知,谢谢 一.链表 1.  ArrayList<>() a) 基本介绍  i. 动态数组的数据结构 ii.新增时,容量超过当前容量,会新new一个数组 iii. 随机查询忧,添加删除劣 b)         常用构造函数 i.              ArrayList() jdk6初始化为容量10的数组 jdk7,8初始化为容量为0的数组(EMPTY_ELEMENTDATA) ii.  

JavaScript数据结构 持续更新中。。一周后可完结

array: 数组创建: var troop=new Array(6); //创建一个长度为6的数组 var troop=new Array(2,3,5,6,4,7); 数组方法: var str="I love javascript"; var single=str.split(""); //'I',' ','l','o',..... var mutipy=str.split(" "); //'I','love','javascript' va

自己总结的 iOS ,Mac 开源项目以及库,知识点------持续更新

自己在 git  上看到一个非常好的总结的东西,但是呢, fork  了几次,就是 fork  不到我的 git 上,干脆复制进去,但是,也是认真去每一个每一个去认真看了,并且也是补充了一些,感觉非常棒,所以好东西要分享,为啥用 CN 博客,有个好处,可以随时修改,可以持续更新,不用每次都要再发表,感觉这样棒棒的 我们 自己总结的iOS.mac开源项目及库,持续更新.... github排名 https://github.com/trending,github搜索:https://github.

用信号量解决进程的同步与互斥探讨【持续更新】

现代操作系统采用多道程序设计机制,多个进程可以并发执行,CPU在进程之间来回切换,共享某些资源,提高了资源的利用率,但这也使得处理并发执行的多个进程之间的冲突和相互制约关系成为了一道难题.如果对并发进程的调度不当,则可能会出现运行结果与切换时间有关的情况,令结果不可再现,影响系统的效率和正确性,严重时还会使系统直接崩溃.就比如你只有一台打印机,有两个进程都需要打印文件,如果直接让他们简单地并发访问打印机,那么你很可能什么都打印不出来或者打印的文件是...anyway,我们需要增加一些机制来控制并

个人网盘2T资料整理分享(持续更新中)

一.       学习书籍下载 1.      数据库与数据结构数据  链接:  http://pan.baidu.com/s/1c094nSG  密码:13el 2.      汇编语言书籍          链接:  http://pan.baidu.com/s/1o63Kke2 密码:8udr 3.      Office书籍             链接:   http://pan.baidu.com/s/1hqgVNVI密码:m54m 4.      PHP书籍            

备战九十,iOS面试题菜单,持续更新(题目及答案已上传Github)

Objective_C语言特性 (戳这里跳转到Github) 分类 扩展 代理(Delegate) 通知(NSNotification) KVO (Key-value observing) KVC(Key-value coding) 属性关键字 runloop (戳这里跳转到Github) RunLoop概念 RunLoop的数据结构 RunLoop的Mode RunLoop的实现机制 RunLoop与NSTimer RunLoop和线程 讲一下 Observer ? autoreleasePo

我的读书清单(持续更新)

我的读书清单(持续更新) 2017-05-31 <一千零一夜>2006(四五年级) <中华上下五千年>2008(初一) <鲁滨孙漂流记>2008(初二) <钢铁是怎样炼成的>2009(初二) <坏蛋是怎样炼成的>2010(初三) <平凡的世界>2011(高二) <悲惨世界>2012(高二) <穆斯林的葬礼>2012(高二) <红楼梦>2012(高二) <边城> <傲慢与偏见>

前端面试题总结(js、html、小程序、React、ES6、Vue、算法、全栈热门视频资源)持续更新 &#362414;

原文: http://blog.gqylpy.com/gqy/438 置顶:来自一名75后老程序员的武林秘籍--必读(博主推荐) 来,先呈上武林秘籍链接:http://blog.gqylpy.com/gqy/401/ 你好,我是一名极客!一个 75 后的老工程师! 我将花两分钟,表述清楚我让你读这段文字的目的! 如果你看过武侠小说,你可以把这个经历理解为,你失足落入一个山洞遇到了一位垂暮的老者!而这位老者打算传你一套武功秘籍! 没错,我就是这个老者! 干研发 20 多年了!我也年轻过,奋斗过!我

GSS - Can you answer these queries I ~ ? (持续更新...)

GSS - Can you answer these queries I ~ ? (持续更新...) \(\text{SPOJ}\) 毒瘤的 数据结构系列, 值得一做 GSS I : 给定一数列\(A\), 支持查询区间最大子段和 \(A[i] \le 15007,\ N\le 5e4\) 线段树常规做法 : //知识点:线段树 /* By:Luckyblock */ #include <cstdio> #include <cctype> #include <algorith

LeetCode题解分类汇总(包括剑指Offer和程序员面试金典,持续更新)

LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中) 剑指Offer 数据结构 链表 序号 题目 难度 06 从尾到头打印链表 简单 18 删除链表的节点 简单 22 链表中倒数第k个节点 简单 二叉树 序号 题目 难度 07 重建二叉树 中等 栈和队列 序号 题目 难度 09 用两个栈实现队列 简单 图 序号 题目 难度 12 矩阵中的路径 中等 13 机器人的运动范围 中等 算法 动态规划 序号 题目 难度 10- I 斐波那契数列 简单 10- II 青蛙跳台阶问题 简单 查找