翻转一棵二叉树。
示例1:
输入:
输出:
备注:
这个问题是受到 Max Howell 的 原问题 启发的 :
谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在白板上写出翻转二叉树这道题,这太糟糕了。
/**
* 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) {
};
个人解法
var invertTree = function(root) {
//遍历函数,重构树
function bianli(node){
if(node === null){
return null;
}else{
var newNode = new TreeNode(node.val);
newNode.right = bianli(node.left);
newNode.left = bianli(node.right);
return newNode;
}
}
var reverse = bianli(root);
return reverse;
};