題目描述:
思路:借助佇列「先進後出」的特點將對稱位置的節點順序入隊,再出隊,這樣得到的就是它們的倒序排列,比較兩次結果是否相同。比較的條件是如果都為null,則符合,這時便不再判斷後面的條件,而進行下一次迭代;如果其中乙個為null或者它們兩個的值不相等,則不符合條件,直接返回false;如果遍歷完整個二叉樹,則返回true。
**:
/**
* definition for a binary tree node.
* public class treenode
* }*/class
solution
if(p1==null||p2==null||p1.val!=p2.val)
q.add(p1.left)
; q.
add(p2.right)
; q.
add(p1.right)
; q.
add(p2.left);}
return
true;}
}
執**況: 對稱二叉樹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...