LeetCode-226-翻转二叉树(python)

翻转二叉树

发现了二叉树这种递归法都是有套路的,只要你把道理写清楚了,递归的复杂过程就让计算机去做吧,你不要管那么多。。。

  1. 每次需要考虑的特殊情况就是递归出口:这题就是当树为空时,return
  2. 然后先考虑根节点的左右子树翻转:用一个中间节点先保存左子树,其实就是利用交换两个数的值的思路,不再赘述。
  3. 递归左右子树
  4. return root
    代码如下:
class Solution:
    def invertTree(self, root: TreeNode) -> TreeNode:
        if root is None:
            return
        tempNode = root.left
        root.left = root.right
        root.right = tempNode
        self.invertTree(root.left)
        self.invertTree(root.right)
        return root
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容