(四)重建二叉樹

2021-09-19 04:40:29 字數 693 閱讀 2780

輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列和中序遍歷序列,則重建二叉樹並返回。

/**

* definition for binary tree

* public class treenode

* }*/public class solution

int j = 0;

treenode root = new treenode(pre[0]);

for(int i = 0;i< in.length;i++)

}int preleft = new int[j];

int inleft = new int[j];

int preright = new int[pre.length - j -1];

int inright = new int[in.length - j -1];

for(int i = 0 ;i < pre.length; i++)

}root.left = reconstructbinarytree(preleft,inleft);

root.right = reconstructbinarytree(preright,inright);

return root;

}}

劍指Offer(四) 重建二叉樹 二叉樹

牛客網刷題筆記記錄。參考自 輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列和中序遍歷序列,則重建二叉樹並返回。通常樹有如下幾種遍歷方式 本題為前序遍歷和中序遍歷,最少需要兩種遍歷方式,才能重建二叉樹。前序遍歷序列中...

劍指offer(四) 重建二叉樹

輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列和中序遍歷序列,則重建二叉樹並返回。我們先來弄懂前序遍歷和中序遍歷的特點 前序遍歷 根結點 左子樹 右子樹。中序遍歷 左子樹 根結點 右子樹。所以前序遍歷序列的第乙個值...

劍指Offer 四 重建二叉樹

解法1 前序遍歷的第乙個數為樹的根,而中序遍歷中根所在位置的左面的序列即為左子樹的中序遍歷,右面即為右子樹的中序遍歷,遞迴找到每個子樹的根就ok了!class solution 返回構造的treenode根節點 def reconstructbinarytree self,pre,tin write...