翻转二叉树

    xiaoxiao2021-04-12  35

    一、问题描述

       翻转一棵二叉树

    样例

    1 1 / \ / \ 2 3 => 3 2 / \ 4 4 二、解题思路

             运用递归算法,前序遍历此二叉树的左右子树,然后运用swap函数交换左右子树即可。

    三、我的代码

    class Solution { public:     /**      * @param root: a TreeNode, the root of the binary tree      * @return: nothing      */     void invertBinaryTree(TreeNode *root) {         if(root==NULL)  return;         swap(root->left,root->right);         invertBinaryTree(root->left);         invertBinaryTree(root->right);     } };

    四、我的感想

           做这道题首先想到交换运用的swap函数,然后问题就简单化了,以前的知识到现在依然很有用,想到有必要去翻翻以前的课本了。

    转载请注明原文地址: https://ju.6miu.com/read-667773.html

    最新回复(0)