劍指Offer(58) 對稱的二叉樹

2021-09-17 19:59:27 字數 718 閱讀 1943

請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。

1)比較節點的左右子結點:

a. 如果其中乙個為空則不對稱;

b. 如果均不為空,則比較結點值,如果結點值不同則不對稱;

2)如果當前結點左右子結點相同,則遞迴比較左子樹的右結點和右子樹的左結點、左子樹的左結點和右子樹的右結點。

public

class

solution

return

comroot

(proot.left, proot.right);}

private

boolean

comroot

(treenode pleft, treenode pright)

// 如果左子樹不為空,右子樹為空,則不對稱

if(pright == null)

// 左右子結點值不同,則不對稱

if(pleft.val != pright.val)

// 比較左子樹的右結點和右子樹的左結點

// 比較左子樹的左結點和右子樹的右結點

return

comroot

(pleft.right, pright.left)

&&comroot

(pleft.left, pright.right);}

}

劍指offer 58 對稱的二叉樹

請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。時間限制 1秒 空間限制 32768k 熱度指數 121507 見 struct treenode class solution bool match treenode l,treenode...

《劍指 Offer》 58 對稱的二叉樹

樹 請實現乙個函式,用來判斷一棵二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。對稱的二叉樹 8 10 10 11 9 9 11 public class treenode public class solution 判斷根節點的左子樹和右子樹是不是對稱 retur...

劍指offer58 對稱的二叉樹

請實現乙個函式,用來判斷一棵二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。思路1 第一遍做的時候,利用的是源樹和映象樹相等的特徵來做的 即如果是對稱的,按左根右和右根左遍歷得到是一樣的結果。class solution s to string p val dfs ...