想不到我一个pj2=的人也能做出F题啊!
注:我以前看不懂EF的Editorial,所以从没做出来过……
题面
给你一棵二叉树的前序和中序遍历,重构这颗二叉树。(根节点为1)
Part1 确定根节点和左右子树的所有节点
谁都知道一颗二叉树的根节点就是它的前序遍历的第一项。
那么确定左右子树的内容就交给中序遍历了。
$ pre_1 $ $ pre_2 $ $ pre_3 $ 根节点: $ pre_1 $
$ in_1 $ $ in_2 $ $ in_3 $ 发现 $ pre_1 = in_2 $,可以确定左子树与右子树。
Part2 确定左子树根节点和左右子树的所有节点
请重新阅读 Part1。
Part3 Error!
如果我们确定到的根节点不在递归范围之内,那就对不住了!
代码
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
后记
马上要到暑假啦 ~
暑假会一周4 ~ 7更!
P.S. 祝大家今晚的Atcoder RP++!
都看到这里了,还不点赞推荐加关注 ~
不白嫖,从我做起!