翻转二叉树(Invert Binary Tree)

原创 2015年07月08日 12:54:26

最近翻转二叉树算法成为了热点算法,起因就是因为homebrew的作者去google面试的事件,然后业界又出现了一场撕逼大战:对于工作经验和算法能力哪个更重要?不想把战火进一步蔓延,所以在这我也不发表观点了,直接进入正题。


问题描述(直接copy自LeetCode):

Invert a binary tree.

     4
   /   \
  2     7
 / \   / \
1   3 6   9
to
     4
   /   \
  7     2
 / \   / \
9   6 3   1
这个算法其实不难,在LeetCode中的难易评级也是easy,算法的核心就是递归思想,下面直接上代码,也是笔者在LeetCode中的答案,因为LeetCode不支持oc,只能用js了

/**
 * Definition for a binary tree node.
 * function TreeNode(val) {
 *     this.val = val;
 *     this.left = this.right = null;
 * }
 */
/**
 * @param {TreeNode} root
 * @return {TreeNode}
 */
var invertTree = function(root) {
    if(root === null){
        return null;
    }
    root.left = invertTree(root.left);
    root.right = invertTree(root.right);
     
    var tempNode = root.left;
    root.left = root.right;
    root.right = tempNode;
    return root;
};



LintCode --invert-binary-tree(翻转二叉树)

LintCode --invert-binary-tree(翻转二叉树) 原题链接:http://www.lintcode.com/zh-cn/problem/invert-binary-tre...

[LeetCode] Invert Binary Tree - 二叉树翻转系列问题

目录: Binary Tree Level Order Traversal - 二叉树层次遍历 BFS 题目背景是MaxHowell(他是苹果电脑最受欢迎的homebrew程序作者)去Google面试...

leetcode 226 Invert Binary Tree 翻转二叉树

大牛没有能做出来的题,我们要好好做一做     Invert a binary tree. 4 / \ 2 7 / \ / \ 1 3 6 9 to ...

LeetCode 226 Invert Binary Tree(转换二叉树)

翻译将下图中上面的二叉树转换为下面的形式,具体为每个左孩子节点和右孩子节点互换位置。原文如上图分析每次关于树的题目出错都在于边界条件上……所以这次仔细多想了一遍:void swapNode(TreeN...
  • NoMasp
  • NoMasp
  • 2015年12月27日 12:31
  • 2615

PAT (Advanced Level) Practise 1102. Invert a Binary Tree (25) 二叉树的层序和中序遍历

1102. Invert a Binary Tree (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 1...

1102.Invert a Binary Tree (25)[树的遍历]

1. 原题: https://www.patest.cn/contests/pat-a-practise/1102 2. 思路: 题意:树的遍历题。 给出一颗二叉树,输出反转后的层序和中序。 思路: ...

hdoj 1710 Binary Tree Traversals 【二叉树由前序和中序求后序】

Binary Tree Traversals Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/O...

Balanced Binary Tree 平衡二叉树的检验

检验二叉树是否为Given a binary tree, determine if it is height-balanced. For this problem, a height-balan...

【LeetCode-面试算法经典-Java实现】【110-Balanced Binary Tree(平衡二叉树)】

【110-Balanced Binary Tree(平衡二叉树)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  Given a binary tree, determin...

Binary Tree Level Order Traversal II 二叉树层次遍历(广搜,queue)(重重)

题目: 点击打开链接 解答: 上一题采用的深搜+记录深度的fangh
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:翻转二叉树(Invert Binary Tree)
举报原因:
原因补充:

(最多只允许输入30个字)