真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

刷題系列-Python判斷是否鏡像對(duì)稱二叉樹

繼續(xù)刷題,判斷是否鏡像對(duì)稱二叉樹。

成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站制作、成都做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)甘井子,十載網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108

鏡像對(duì)稱二叉樹,顧名思義,以根節(jié)點(diǎn)為軸,左右節(jié)點(diǎn)和節(jié)點(diǎn)內(nèi)容互為鏡像;如下圖所示。這里要避免和完全二叉樹混淆。

刷題系列 - Python判斷是否鏡像對(duì)稱二叉樹

這個(gè)我還是考慮了一段時(shí)間,遞歸和迭代都可以實(shí)現(xiàn)。遞歸的,如果一個(gè)節(jié)點(diǎn)值作為輸入很難實(shí)現(xiàn),所以新建一個(gè)新方法recurse,輸入左右兩個(gè)節(jié)點(diǎn),返回bool值。思路很簡(jiǎn)單,如果輸入兩個(gè)節(jié)點(diǎn)都是空,可能是單個(gè)跟節(jié)點(diǎn),返回True;如果一個(gè)有,另一個(gè)為空,返回False;如果左右兩個(gè)節(jié)點(diǎn),如果節(jié)點(diǎn)值相等,這里遞歸,把這兩個(gè)節(jié)點(diǎn)的子節(jié)點(diǎn)左右對(duì)比,并按照and 關(guān)聯(lián),如果有一個(gè)下層對(duì)比False,則所有都是False。如果都為True,則層層返回True。

遞歸的核心點(diǎn),就是定義傳入下一次遞歸輸入,和如何處理下一次遞歸的返回。

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    def isSymmetric(self, root: TreeNode) -> bool:
        if root== None:
            return True
        else:
            return recurse(root.left,root.right)
        
def recurse(leftNode,rightNode):
        if leftNode == None and rightNode == None:
            return True
        elif leftNode != None and rightNode != None:
            if leftNode.val ==rightNode.val:
                return recurse(leftNode.left,rightNode.right) and recurse(leftNode.right,rightNode.left)
            else:
                return False
        else:
            return False

網(wǎng)站標(biāo)題:刷題系列-Python判斷是否鏡像對(duì)稱二叉樹
文章起源:http://weahome.cn/article/pddcoo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部