当前位置:首页 > 数据库

聊聊二叉树的左右子树交换

本文转载自微信公众号「三分钟学前端」,聊聊作者sisterAn。叉树转载本文请联系三分钟学前端公众号。右树

翻转一棵二叉树。网站模板交换

示例:

输入:

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

输出:

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

遍历+交换左右子树

解题思路: 从根节点开始依次遍历每个节点,聊聊然后交换左右子树既可

const invertTree = (root) => {      if(!root) return null     // 先翻转当前节点的叉树左右子树     const temp = root.left     root.left = root.right     root.right = temp     // 然后遍历左子树     invertTree(root.left)     // 再遍历右子树     invertTree(root.right)     return root } 

这里采用的服务器托管是前序遍历,也可以是服务器租用右树后序遍历或层序遍历

leetcode:https://leetcode-cn.com/problems/invert-binary-tree

分享到:

滇ICP备2023006006号-16