請實現乙個函式,用來判斷一棵二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。
思路1:第一遍做的時候,利用的是源樹和映象樹相等的特徵來做的:即如果是對稱的,按左根右和右根左遍歷得到是一樣的結果。
class
solution
s +=to_string
(p->val)
;dfs_left
(p->left, s)
;dfs_left
(p->right, s);}
void
dfs_right
(treenode* p, string& s)
s +=to_string
(p->val)
;dfs_right
(p->right, s)
;dfs_right
(p->left, s);}
bool
issymmetrical
(treenode* proot)
};
思路2:從對稱樹本身結點特徵出發
對於乙個結點,左右子結點要相等,並且右結點的左節點要和左結點的右結點相等
class
solution
bool
issymmetrical
(treenode* proot)
};
劍指offer 58 對稱的二叉樹
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。時間限制 1秒 空間限制 32768k 熱度指數 121507 見 struct treenode class solution bool match treenode l,treenode...
劍指Offer(58) 對稱的二叉樹
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。1 比較節點的左右子結點 a.如果其中乙個為空則不對稱 b.如果均不為空,則比較結點值,如果結點值不同則不對稱 2 如果當前結點左右子結點相同,則遞迴比較左子樹的右結點和右子樹的左結點 左子...
《劍指 Offer》 58 對稱的二叉樹
樹 請實現乙個函式,用來判斷一棵二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。對稱的二叉樹 8 10 10 11 9 9 11 public class treenode public class solution 判斷根節點的左子樹和右子樹是不是對稱 retur...