zoukankan      html  css  js  c++  java
  • leetcode 226. 翻转二叉树

    翻转一棵二叉树。

         4
       /   
      2     7
     /    / 
    1   3 6   9

    转换为:

         4
       /   
      7     2
     /    / 
    9   6 3   1


    注意点:小心不要把程序写成下面这样:
     1 root->left = invertTree(root->right);
    2 root->right = invert(root->left);
     
    因为第一行的root->left指向的内容已近改变,要用一个变量来保存原来的root->left的值
     1 /**
     2  * Definition for a binary tree node.
     3  * struct TreeNode {
     4  *     int val;
     5  *     TreeNode *left;
     6  *     TreeNode *right;
     7  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
     8  * };
     9  */
    10 class Solution {
    11 public:
    12     TreeNode* invertTree(TreeNode* root) {
    13         if(root == NULL) return NULL;
    14         TreeNode* temp = root->left;
    15         root->left = invertTree(root->right);
    16         root->right = invertTree(temp);
    17         return root;
    18     }
    19 };
    有疑惑或者更好的解决方法的朋友,可以联系我,大家一起探讨。qq:1546431565
  • 相关阅读:
    Android Studio不自动代码提示问题解决
    公司邮箱
    IntentService2
    python帮助信息和常见强制转换
    列表,字典的常用方法
    python的类型(一)
    python运算符
    pycharm调试技巧
    python开发工具
    python安装
  • 原文地址:https://www.cnblogs.com/mr-stn/p/8978015.html
Copyright © 2011-2022 走看看