给定一个数字v和k,在树的第k层插入一层v
采用递归的办法,根节点因为没有根节点,要特殊处理一下
class Solution { public: TreeNode* helper(TreeNode* node, int v, int d, bool bLeft) { if(d==1){ TreeNode* head=new TreeNode(v); if(bLeft) head->left=node; else head->right=node; return head; } if(!node) return NULL; node->left = helper(node->left, v, d-1, true); node->right = helper(node->right, v, d-1, false); return node; } TreeNode* addOneRow(TreeNode* root, int v, int d) { if(d==1){ TreeNode* head=new TreeNode(v); head->left=root; return head; } if(!root) return NULL; root->left=helper(root->left, v, d-1, true); root->right=helper(root->right, v, d-1, false); return root; } };