58 劍指offer 對稱的二叉樹

2022-08-24 01:15:17 字數 568 閱讀 3142

題目描述

請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。

解題思路:定義一種遍歷方式,先遍歷父結點,然後遍歷右結點,然後遍歷左結點;如果為對稱二叉樹,則與前序遍歷相同。

注意點:對於乙個結點如果其沒有子結點,應該將其子結點位置特殊處理,例如用null表示

1/*2

struct 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

請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。很簡單,關鍵還是知道怎麼樣才能判斷乙個 二叉樹是否對稱,只要採用前序 中序 後序 層次遍歷等任何一種遍歷方法,分為先左後右和先 右後左兩種方法,只要兩次結果相等就說明這棵樹是一顆對稱二叉樹。...