lintcode翻轉二叉樹

翻轉二叉樹 

Accepted

總耗時: 
254 ms
100% 數據通過測試.
還沒解決的相關題目
26 %389. 判斷數獨是否合法容易
20 %248. 統計比給定整數小的數的個數中等
19 %249. 統計前面比自己小的數的個數困難
14 %131. 大樓輪廓超難
26 %370. 將表達式轉換爲逆波蘭表達式困難 太牛了,把AC的喜悅分享給你的朋友吧!

解析:這道題的樹並不是二叉查找樹,所以對每個結點的左右結點交換即可。

/**
 * Definition of TreeNode:
 * class TreeNode {
 * public:
 *     int val;
 *     TreeNode *left, *right;
 *     TreeNode(int val) {
 *         this->val = val;
 *         this->left = this->right = NULL;
 *     }
 * }
 */


class Solution {
public:
    /*
     * @param root: a TreeNode, the root of the binary tree
     * @return: nothing
     */
    void invertBinaryTree(TreeNode * root) {
        // write your code here
        if(root==NULL)
        return ;
        invertBinaryTree(root->left);//後續遍歷,先對左右結點操作
        invertBinaryTree(root->right);
        TreeNode *tmp;
        tmp=root->left;
        root->left=root->right;
        root->right=tmp;
    }
};
点赞