翻转二叉树
来源:互联网 发布:ip网络寻呼话筒 编辑:程序博客网 时间:2024/06/06 16:41
问题描述:
翻转一颗二叉树。
实现思路:
递归遍历,从二叉树的最下端(即叶子节点出)进行交换,依次往上进行交换。
实现代码:
/**
* 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) {
invertBinaryTree(root->left);
invertBinaryTree(root->right);
swap(root->left, root->right);
}
}
};
感想:
翻转二叉树要从下往上进行。利用递归,先将叶子节点进行翻转,然后依次往上进行。
0 0
- C++二叉树翻转
- 翻转二叉树
- 翻转二叉树
- 题目:翻转二叉树
- LintCode 翻转二叉树
- LinkCode-翻转二叉树
- 翻转二叉树
- 翻转二叉树
- 翻转二叉树
- LintCode_175_翻转二叉树
- 二叉树翻转
- lintcode ----翻转二叉树
- lintcode,翻转二叉树
- 翻转二叉树
- 翻转二叉树
- 翻转二叉树
- 翻转二叉树
- LintCode-翻转二叉树
- java对象头
- EAS BOS 8.0 样板工程(成品检验取样单)
- Android程序内存泄漏的原因和解决办法
- PYTHON-基于有道的在线翻译
- OpenCV学习笔记(08):OpenCV3.2版本下的Mat和IplImage相互转换
- 翻转二叉树
- c++ vector 寻找最大最小值
- 彻底征服闭包定义,特点,价值,用法!
- [leetCode刷题笔记]2017.04.10
- 实验:使用SharedPreferences实现QQ登录功能
- ES6 学习笔记
- js实现表单提交后不重新刷新当前页面,并停留在当前页面
- 容器中的modCount作用
- jsonp和XMLHttpRequest用法异同,jsp+js+servlet+mysql