LeetCode 814. 二叉树剪枝
思路:dfs后序遍历,返回空指针赋值给子树实现剪枝
从最底下单个的0节点开始,是一个自底向上的过程,直到遇见非零节点无法继续剪枝为止
代码:
class Solution {
public:
TreeNode* pruneTree(TreeNode* root) {
if (!root)return root;
root->left = pruneTree(root->left);
root->right = pruneTree(root->right);
if (!root->val && !root->left && !root->right)return nullptr;
else return root;
}
};