题目描述
方法思路
class Solution {
//Runtime: 4 ms, faster than 93.26%
//Memory Usage: 40.1 MB, less than 59.02%
public TreeNode addOneRow(TreeNode root, int v, int d) {
if(d == 1){
TreeNode node = new TreeNode(v);
node.left = root;
return node;
}
if(d == 2) add_Helper(root, v);
else if(root != null) {
if(root.left != null)
addOneRow(root.left, v, d - 1);
if(root.right != null)
addOneRow(root.right, v, d - 1);
}
return root;
}
public void add_Helper(TreeNode root, int v){
if(root == null) return;
TreeNode left = root.left;
TreeNode right = root.right;
root.left = new TreeNode(v);
root.right = new TreeNode(v);
root.left.left = left;
root.right.right = right;
}
}