給定乙個二叉樹,檢查它是否是映象對稱的。
例如,二叉樹 [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
思路:遞迴
先判斷左右結點是否都不為空,然後將左右結點作為引數傳進遞迴函式,遞迴函式對兩個結點的左右結點做出判斷,決定返回不同的值或將不同的引數傳入遞迴函式,不過寫的較為複雜
時間複雜度:o(n)空間複雜度:o(n)
/**
* definition for a binary tree node.
* public class treenode
* }*/public
class
solution
public
bool
issymmetric
(treenode root)
}
看來題解後才知道還可以這樣寫遞迴函式,這樣顯得更為簡潔
public
class
solution
public
bool
issymmetric
(treenode root)
}
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 方法一 遞迴 思路 如果乙個樹的左子樹與右子樹映象對稱,則該樹是對稱的 兩個樹互為映象的...
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 3class solution public boolean issymmetricdoubl...
LeetCode 對稱二叉樹
我的解決方案 比較笨拙,我直接按照左後根遍歷一遍,然後再按照右後根遍歷一遍,最後比較結果 class treenode public class solution string ltreetostring tree.left,string string ltreetostring tree.righ...