給定乙個二叉樹,檢查它是否是映象對稱的。
例如,二叉樹 [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
說明:
如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。
判斷二叉樹的點:
如果根節點為空,那麼整個二叉樹也是映象對稱的
如果根節點不為空:
左右子節點都為null,說明只有乙個根節點,所以二叉樹也是映象對稱的
左右子節點乙個為空null,乙個不為空,那麼說明二叉樹不是映象對稱的
左右子節點不為空,那麼說明二叉樹第一二層都正確,所有需要通過遞迴前面三步驟。輸入的引數為:left.left,right.right和left.right,right.left
下乙個迭代過程的根節點為left和right
/**
* definition for a binary tree node.
* public class treenode
* }*/class solution
public boolean issymmetric(treenode left,treenode right)
else if(left==null || right==null)
else if(left.val!=right.val)else
}}
101 對稱二叉樹
給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 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說明 如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。思路 遞迴就用dfs,迭代是b...
20 對稱二叉樹
題目 給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 1,2,2,3,4,4,3 是對稱的。說明 如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。歷史總是驚人的相似,我遇到這道題還是沒寫出來,但是,網上找到的 瞬間懂了其思路,哎,繼續刷題吧 public static boolean ...
101 對稱二叉樹
給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 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說明 如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。解題思路 對稱二叉樹可以理解...