题目
给你两棵二叉树,原始树 original 和克隆树 cloned,以及一个位于原始树 original 中的目标节点 target。
其中,克隆树 cloned 是原始树 original 的一个 副本 。
请找出在树 cloned 中,与 target 相同 的节点,并返回对该节点的引用(在 C/C++ 等有指针的语言中返回 节点指针,其他语言返回节点本身)。
示例 1:
1 | 输入: tree = [7,4,3,null,null,6,19], target = 3 |
示例2:
1 | 输入: tree = [7], target = 7 |
示例3:
1 | 输入: tree = [8,null,6,null,5,null,4,null,3,null,2,null,1], target = 4 |
示例4:
1 | 输入: tree = [1,2,3,4,5,6,7,8,9,10], target = 5 |
示例5:
1 | 输入: tree = [1,2,null,3], target = 2 |
注意:
- 树中节点的数量范围为
[1, 10^4]
。 - 同一棵树中,没有值相同的节点。
target
节点是树original
中的一个节点,并且不会是null
。
解法
解法一:
查找的时候,带着值去查找
JAVA
1 | public final TreeNode getTargetCopy(final TreeNode original, final TreeNode cloned, final TreeNode target) { |