平衡二叉樹左右子樹高度差不超過 1。
如果二叉樹的每個節點的左子樹和右子樹的深度不大於1,它就是平衡二叉樹。先寫乙個求深度的函式,再對每乙個節點判斷,看該節點的左子樹的深度和右子樹的深度的差是否大於1
class
solution
:def
isbalanced_solution
(self, proot)
:# write code here
defdepth
(proot):if
not proot:
return
0return1+
max(depth(proot.left)
,depth(proot.right))if
not proot:
return
true
l = depth(proot.left)
r = depth(proot.right)
ifabs
(l-r)
<=1:
return self.isbalanced_solution(proot.left)\
and self.isbalanced_solution(proot.right)
return
false
劍指offer python 55 二叉樹的深度
從根結點到葉結點依次經過的結點 含根 葉結點 形成樹的一條路徑,最長路徑的長度為樹的深度。利用遞迴實現。如果一棵樹只有乙個結點,那麼它的深度為1。遞迴的時候無需判斷左右子樹是否存在,因為如果該節點為葉節點,它的左右子樹不存在,那麼在下一級遞迴的時候,直接return 0。同時,記得每次遞迴返回值的時...
劍指offer(Python)替換空格
這道題要求是 將乙個字串中的空格替換成 20 有多少個空格就替換成多少個 20 例如 hello world 中間有兩個空格,則需要輸出的形式是 hello 20 20world 字串首尾的空格亦算在內。class solution def replacespace self,s return 20...
劍指offer Python 替換空格
請實現乙個函式,將乙個字串中的每個空格替換成 20 python字串,有replace方法,可以實現替換,第乙個引數是要替換的內容,第二個引數是替換的新內容 能夠快速完成,果然python作為一種高階語言,不太適合做演算法 但是 replace 相當於 insert 在替換 時,會將原字串元素的位置...