題目描述
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。
解題思路:定義一種遍歷方式,先遍歷父結點,然後遍歷右結點,然後遍歷左結點;如果為對稱二叉樹,則與前序遍歷相同。
注意點:對於乙個結點如果其沒有子結點,應該將其子結點位置特殊處理,例如用null表示
1/*2struct treenode 9};
10*/
11class
solution
20if(proot1 == null || proot2 ==null)
2124
if(proot1->val != proot2->val)
2528
return issymmetrical(proot1->left,proot2->right) && issymmetrical(proot1->right,proot2->left);//
注意此處處理29}
30bool issymmetrical(treenode*proot)
3134 };
58 劍指offer 對稱的二叉樹
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。思路 首先根節點以及其左右子樹,左子樹的左子樹和右子樹的右子樹相同 左子樹的右子樹和右子樹的左子樹相同即可,採用遞迴 非遞迴也可,採用棧或佇列訪問各級子樹根節點 boolean issymm...
劍指offer 第58題 對稱二叉樹
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。遞迴,判斷左子樹和又子樹是不是一樣 class solution def issymmetrical self,proot write code here return self.issam...
58 對稱的二叉樹 劍指offer
請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。很簡單,關鍵還是知道怎麼樣才能判斷乙個 二叉樹是否對稱,只要採用前序 中序 後序 層次遍歷等任何一種遍歷方法,分為先左後右和先 右後左兩種方法,只要兩次結果相等就說明這棵樹是一顆對稱二叉樹。...