105.从前序与中序遍历序列构成二叉树
发布日期:2021-10-12 21:31:46
浏览次数:1
分类:技术文章
本文共 439 字,大约阅读时间需要 1 分钟。
感觉这道题是我目前碰到的最难的一道二叉树的题了。。。
给我们一个前序数组,一个中序数组,因为前序遍历是按照根左右的顺序来遍历树的,所以前序数组的第一个元素一定是该树的根节点,然后我们可以在中序数组中找到该数,在该数左边的一定都是树的左子树,右边的一定是右子树,因为中序数组的遍历顺序是左根右。接下来从前序数组中移除该数,然后截取slice为1:i+1,i就是中序数组中对应数的下标,也就说明了在前序数组中有多少个左子节点在根节点的左边。我最开始没想明白为什么是preorder[1:i+1]而不是preorder[1:i],后面想明白了,因为i是数组下标,所以本来就要少1,又因为slice是左闭右开的,所以这个时候就少2了,也就是说这里是排在根元素前面的元素个数,因为slice截取从1开始,你要保证后面的i个元素都是左子树,那么最后一个的下标因为是i+1,这个时候i+1-1就是后面的元素个数了,这里弄清楚了好办了,代码如下:
java版:
依然感觉这道题有做的必要
代码:
转载地址:https://blog.csdn.net/qq_40058686/article/details/104409390 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月14日 18时35分54秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
如何使用Python的进度条?
2019-04-27
如何利用情感词典做中文文本的情感分析?
2019-04-27
【青少年编程】【Scratch】06 侦测模块
2019-04-27
【直播】李祖贤:集成学习答疑直播之八-- 集成知识点回顾与补充
2019-04-27
Datawhale组队学习周报(第013周)
2019-04-27
如何设置matplotlib中x,y坐标轴的位置?
2019-04-27
【第15周复盘】B站是个学习的网站
2019-04-27
黄家懿:河北高校邀请赛 -- 二手车交易价格预测决赛答辩
2019-04-27
如何利用pyecharts绘制酷炫的桑基图?
2019-04-27
王朝阳:河北高校邀请赛 -- 二手车交易价格预测决赛答辩
2019-04-27
Scratch等级考试(二级)模拟题
2019-04-27
如何在Jupyter Lab中显示pyecharts的图形?
2019-04-27
什么是Python之禅?
2019-04-27
【青少年编程】【Scratch】01 运动模块
2019-04-27
json的序列化与反序列化
2019-04-27
【第16周复盘】学习的飞轮
2019-04-27
如何利用pyecharts绘制炫酷的关系网络图?
2019-04-27
NCEPU:线下组队学习周报(007)
2019-04-27
【青少年编程】【二级】寻找宝石
2019-04-27
【组队学习】【26期】Linux教程
2019-04-27