操作給定的二叉樹,將其變換為源二叉樹的映象。
二叉樹的映象定義如下:
思路:
交換左右子樹的節點,然後遞迴呼叫該方法。
源**:
# definition for a binary tree node.
# class treenode(object):
# def __init__(self, x):
# self.val = x
# self.left = none
# self.right = none
class
solution
(object):
defmirrortree
(self, root)
:"""
:type root: treenode
:rtype: treenode
"""ifnot root:
#判斷根節點是否為空
return
none
#交換左右子樹的節點
劍指offer 18 醜數
題目 把只包含因子2 3和5的數稱作醜數 ugly number 例如6 8都是醜數,但14不是,因為它包含因子7。習慣上我們把1當做是第乙個醜數。求按從小到大的順序的第n個醜數。直觀的想法 從1開始乙個個判斷數字是否為醜數,遇見醜數就記錄下來,直到找到低n個為止,不過這樣計算複雜度太大。class...
劍指offer18 鍊錶問題
題目 思路一 函式引數是頭之指標和值,遍歷鍊錶,如果滿足頭指標指向節點的下乙個節點的值和需要刪掉的值相等,那麼就需要頭指標指向的節點的next域設定為要刪掉的下乙個節點的值。同時返回頭結點的下乙個結點的位址。注意 這種情況不包括頭節點為空和頭節點的值就是要刪掉的值 if head return he...
劍指offer 18 樹的子結構
題目描述 輸入兩棵二叉樹a,b,判斷b是不是a的子結構。ps 我們約定空樹不是任意乙個樹的子結構 思路 用遞迴,遍歷a樹的每乙個節點,然後對於每乙個節點,再判斷是否和a相匹配。coding utf 8 class treenode def init self,x self.val x self.le...