28 對稱的二叉樹

2021-10-22 17:30:40 字數 1034 閱讀 6725

請實現乙個函式,用來判斷一棵二叉樹是不是對稱的。如果一棵二叉樹和它的映象一樣,那麼它是對稱的。

例如,二叉樹 [1,2,2,3,4,4,3] 是對稱的。

示例 1:

輸入:root = [1,2,2,3,4,4,3]

輸出:true

示例 2:

輸入:root = [1,2,2,null,3,null,3]

輸出:false

/**

* definition for a binary tree node.

* public class treenode

* }*/class

solution

return

issame

(root.left,root.right);}

private

boolean

issame

(treenode root1,treenode root2)

//一棵空一棵非空

if(root1==null||root2==null)

return root1.val==root2.val&&

issame

(root1.left,root2.right)

&&issame

(root2.left,root1.right);}

}

時間複雜度o(n)n個節點均要遍歷

空間複雜度o(n):最差情況下,二叉樹退化為鍊錶,系統使用 o(n)o(n) 大小的棧空間。

27 二叉樹映象28 對稱二叉樹

解題思路 這裡還是貼下大佬的解答。遞迴這方面我做的不夠好,看週末能不能整理個遞迴的合集。在這裡插入 片 class solution def issymmetric self,root treenode bool def recur l,r if not l and not r return tru...

28 對稱的二叉樹 待優化

請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。思路1 前序遍歷順序為根 左 右。定義乙個對稱的前序遍歷演算法,順序為根 右 左。如果兩次遍歷後的序列是相同的,那麼認為是對稱的,如果是不同的,那麼就是不對稱的。注意特殊情況,如二叉樹的所有...

面試題28 對稱二叉樹

題目 請實現乙個函式,用來判斷一棵二叉樹是不是對稱的。如果一棵二叉樹和它的映象一樣,那麼它是對稱的。例如,二叉樹 1,2,2,3,4,4,3 是對稱的。方法 遞迴 root1 的左子樹和 root2 的右子樹比較,root1 的右子樹和 root2 的左子樹比較,遞迴下去直到 root1 和 roo...