求先序排列
中序:左-根-右
后序:左-右-根
这里最关键的就是利用后序的根在序列的最后
通过定位根来分开子树
比如说 我们来看例子
这里给出的两个序列
BADC
BDCA
后序排列里的根就是A
那么中序里的根就是A
你说你不知道接下来我从后序里看不出来怎么排列的两棵子树
怎么分,这个时候就是看中序,中序的主根左右正好是两棵子树
再接下来就是同样的方法把我们做的这两步
第一步:找主根(找根
第二步:分子树(分树
再给它重复递归
就可以解出来了
最后把它写成一个函数来按先序输出就可以了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步