美文网首页
leetcode 翻转二叉树 -- 翻转先序遍历

leetcode 翻转二叉树 -- 翻转先序遍历

作者: 夏liao夏天 | 来源:发表于2019-10-18 09:14 被阅读0次

    翻转一棵二叉树。

    示例

    输入:

        4
      /   \
     2     7
    / \   / \
    1   3 6   9
    

    输出:

        4
      /   \
     7     2
    / \   / \
    9   6 3   1
    

    题目说是翻转二叉树,其实就是简单的翻转的先序遍历,即先访问根结点,再访问右子树,最后访问左子树。

    class Solution {
    public:
        TreeNode* postOrderTraverse(TreeNode* root){
            TreeNode* t = NULL;
            if(root != NULL){
                t = new TreeNode(root->val);
                t->left = postOrderTraverse(root->right);
                t->right = postOrderTraverse(root->left);
            }
            return t;
        }
        TreeNode* invertTree(TreeNode* root) {
            return postOrderTraverse(root);
        }
    };
    

    题目链接:https://leetcode-cn.com/problems/invert-binary-tree/

    相关文章

      网友评论

          本文标题:leetcode 翻转二叉树 -- 翻转先序遍历

          本文链接:https://www.haomeiwen.com/subject/qkobmctx.html