当前位置: 首页 > 后端技术 > Python

力扣-面试题27.二叉树镜像[剑指Offer][Python]

时间:2023-03-25 19:39:40 Python

LeetCode面试题27.二叉树镜像[剑指Offer][Easy][Python][二叉树][Recursive]请完成题将二叉树作为输入并输出其镜像的函数。示例输入:4/\27/\/\1369镜像输出:4/\72/\/\9631示例1:输入:root=[4,2,7,1,3,6,9]输出:[4,7,2,9,6,3,1]限制:0<=节点数<=1000注:本题与主站226题相同,递归前序遍历的二叉树,如果当前节点有子树,则交换左右子树。Python3代码#定义二叉树节点。#classTreeNode:#def__init__(self,x):#self.val=x#self.left=None#self.right=Noneclass解决方案:defmirrorTree(self,root:TreeNode)->TreeNode:ifnotroot:returnNone#叶子节点,直接返回自身ifnotroot.leftandnotroot.right:returnroot#交换非叶子节点的左右子树root.left,root.right=root.right,root.leftifroot.left:self.mirrorTree(root.left)ifroot.right:self.mirrorTree(root.right)返回root代码地址GitHub链接