【刷题】python 根据前序和中序重建二叉树(leetcode)
步骤:
1.在前序序列中找到根节点
2.在中序序列中,根据根节点的位置,区分左右子树集合
3.分别列出左右子树的前序序列和中序序列
4.回溯前序序列,重复上述步骤,直到将所有节点集合拆解为叶子节点
举例:
前序(根-左-右):1 2 4 7 3 5 6 8
中序(左-根-右):4 7 2 1 5 3 8 6
1.前序第一个数字是整个二叉树的根节点 ,根节点:1
2.中序序列,以根节点1区分左右子树集合,左子树集合:4 7 2,右子树集合:5 3 8 6
3.左子树的前序序列:2 4 7.
原创
2020-06-12 20:58:06 ·
883 阅读 ·
0 评论