關於leetcode中二叉樹的平台基礎理解

2021-09-29 18:42:54 字數 1167 閱讀 2859

1.力扣上關於二叉樹的題,都是已經將樹建立好了

2.我們只需要根據題意選擇前序,中序,後續遍歷來遍歷後台已經構建好的樹

(先專注於遍歷等與樹相關的演算法,後面再學習建立樹也不遲,畢竟建立樹非常簡單)

3.第三點與樹無關,對於class中的__init__函式,它只負責對傳入資料的初始化,class內的其他函式無法呼叫__init__函式,只能呼叫__init__內初始化的引數,例如:

# definition for a binary tree node.

# class treenode(object):

# def __init__(self, x):

# self.val = x

# self.left = none

# self.right = none

null=

none

class

findelements

(object):

def__init__

(self, root)

:"""

:type root: treenode

在init內層序遍歷樹,並初始化res的值

"""ifnot root:

return

self.res=

#注意必須加上self,否則類內的其他函式無法呼叫res

cur=root

root.val=

0 queque=

[cur]

while queque:

cur=queque.pop(0)

if cur.left:

cur.left.val=

2*cur.val+

1if cur.right:

cur.right.val=

2*cur.val+

2def

find

(self, target)

:"""

:type target: int

:rtype: bool

"""if target in self.res:

return

true

else

:return

false

關於資料結構中二叉樹

include include include typedef char element typedef struct bitnode bitnode,bitree struct queuenode typedef struct queuenode queuenode typedef queueno...

python中二叉樹的遍歷

遞迴方法 class treenode object def init self,x self.val x 左子樹 self.left none 右子樹 self.right none def pre root if root none return none 先序遍歷 print root.val...

leetcode 二叉樹 對稱二叉樹

給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 1,2,2,3,4,4,3 是對稱的。1 2 2 3 4 4 3 但是下面這個 1,2,2,null,3,null,3 則不是映象對稱的 1 2 2 3 3 方法一 遞迴 思路 如果乙個樹的左子樹與右子樹映象對稱,則該樹是對稱的 兩個樹互為映象的...