网站设计所用到的技术/淘宝运营培训机构
深度复制一个二叉树。
给定一个二叉树,返回一个他的 克隆品
解题思路:递归实现。
一刷ac
/*** Definition of TreeNode:* public class TreeNode {* public int val;* public TreeNode left, right;* public TreeNode(int val) {* this.val = val;* this.left = this.right = null;* }* }*/
public class Solution {/*** @param root: The root of binary tree* @return root of new tree*/public TreeNode cloneTree(TreeNode root) {if(root == null) return null;TreeNode res = new TreeNode(root.val);res.left = cloneTree(root.left);res.right = cloneTree(root.right);return res;}}
/*** Definition of TreeNode:* public class TreeNode {* public int val;* public TreeNode left, right;* public TreeNode(int val) {* this.val = val;* this.left = this.right = null;* }* }*/
public class Solution {/*** @param root: The root of binary tree* @return root of new tree*/public TreeNode cloneTree(TreeNode root) {if(root == null) return null;TreeNode res = new TreeNode(0);dfs(root, res);return res;}public void dfs(TreeNode root, TreeNode res){if(root == null) return;res.val = root.val;if(root.left != null){TreeNode left = new TreeNode(0);res.left = left;dfs(root.left, left);}if(root.right != null){TreeNode right = new TreeNode(0);res.right = right;dfs(root.right, right);}}
}