博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode-----翻转二叉树
阅读量:4642 次
发布时间:2019-06-09

本文共 797 字,大约阅读时间需要 2 分钟。

题目——翻转二叉树

翻转一棵二叉树。

示例:

输入:

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

输出:

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

备注:

这个问题是受到 的 启发的 :

谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。

解答

c++

/** * Definition for a binary tree node. * struct TreeNode { *     int val; *     TreeNode *left; *     TreeNode *right; *     TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:    TreeNode* invertTree(TreeNode* root) {        if (root == NULL) {            return root;        }        auto tmp = root->left;        root->left = root->right;        root->right = tmp;        invertTree( root->left);        invertTree( root->right);        return root;    }};

分析

这个题主要运用的是递归的思想。对于非空节点,将他的左右分支进行翻转,是空节点的话就返回。

转载于:https://www.cnblogs.com/qq874455953/p/9589205.html

你可能感兴趣的文章
使用java中replaceAll方法替换字符串中的反斜杠
查看>>
Some configure
查看>>
json_encode时中文编码转正常状态
查看>>
流量调整和限流技术 【转载】
查看>>
正由另一进程使用,因此该进程无法访问此文件。
查看>>
1 线性空间
查看>>
VS不显示最近打开的项目
查看>>
MyEclipse安装Freemarker插件
查看>>
计算多项式的值
查看>>
DP(动态规划)
查看>>
chkconfig
查看>>
TMS320F28335项目开发记录2_CCS与JTAG仿真器连接问题汇总
查看>>
最强的篮球队和马尔可夫模型
查看>>
pyQt 每日一练习 -- 登录框
查看>>
wp 删除独立存储空间文件(多级非空文件夹删除)
查看>>
Loadrunner安装使用入门
查看>>
smartupload 上传文件时 把页面编码改成gbk 解决乱码
查看>>
EPS是什么格式
查看>>
Python的数据库操作(Sqlalchemy)
查看>>
2.抽取代码(BaseActivity)
查看>>