對稱的二叉樹

2021-09-13 08:58:38 字數 843 閱讀 8045

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

*/(參考自牛客網)

/*思路:首先根節點以及其左右子樹,左子樹的左子樹和右子樹的右子樹相同

* 左子樹的右子樹和右子樹的左子樹相同即可,採用遞迴

*/

/*

public class treenode

}public class solution

//判斷左右子樹是否相同

private boolean comroot(treenode left,treenode right)//當left!=null

if(right==null)

return false;

//when left!=null && right !=null

if(left.val!=right.val)

return false;

return comroot(left.right,right.left)&& comroot(left.left,right.right);

}}

下面這段**很優雅:

if(left==null)    return right==null;

//當left!=null

if(right==null)        return false;

如果不這樣寫,就是:

if(left==null)elseelseelse

}}

對稱二叉樹c 對稱的二叉樹

很簡單,關鍵還是知道怎麼樣才能判斷乙個 二叉樹是否對稱,只要採用前序 中序 後序 層次遍歷等任何一種遍歷方法,分為先左後右和先 右後左兩種方法,只要兩次結果相等就說明這棵樹是一顆對稱二叉樹。迭代版本 class solution public bool issymmetric treenode ro...

對稱二叉樹

請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。這題還是蠻簡單的。對稱二叉樹 include using namespace std struct treenode bool issymmetrical treenode proot1,t...

對稱二叉樹

請實現乙個函式,用來判斷一顆二叉樹是不是對稱的。注意,如果乙個二叉樹同此二叉樹的映象是同樣的,定義其為對稱的。solution public class treenode 我們可以通過比較二叉樹的前序遍歷序列和對稱前序遍歷序列來判斷二叉樹是不是對稱的 public class solution bo...