問題描述:
給定乙個二叉樹,檢查它是否是映象對稱的。
例如,二叉樹[1,2,2,3,4,4,3]
是對稱的。
1但是下面這個/ \2 2
/ \ / \
3 4 4 3
[1,2,2,null,3,null,3]
則不是映象對稱的:
1說明:/ \2 2
\ \
3 3
如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。
遞迴
/**
* definition for a binary tree node.
* public class treenode
* }*/class solution
if(t1==null||t2==null)
return (t1.val==t2.val)&&ismirror(t1.left,t2.right)&&ismirror(t1.right,t2.left);
}public boolean issymmetric(treenode root)
}
非遞迴
/**
* definition for a binary tree node.
* public class treenode
* }*/class solution
return true;
}}
映象二叉樹
映象二叉樹與二叉樹的區別是左右孩子對於根節點的相對大小剛好相反不用建立映象樹,通過對原樹的映象便歷,即可得到所需的東西。後序 樹 lr根,映象 rl根。如果創立映象二叉樹,insert 改一下即可,這樣可以把preordermirror 等去掉。對於遍歷後的排序放到vector陣列裡便於比較,而且進...
映象二叉樹
題目描述 操作給定的二叉樹,將其變換為源二叉樹的映象。思路 1 獲取源二叉樹的映象,將源二叉樹的左右子樹交換即可 2 主要步驟 若二叉樹為空,直接返回 若二叉樹不為空,交換其左右子樹 遞迴的將二叉樹的其他結點進行交換 public class treenode public class soluti...
leetcode之二叉樹的映象
invert binary tree invert a binary tree.4 2 7 1 3 6 9to4 7 2 9 6 3 1幾周前,我用的是遞迴解法,如下 definition for a binary tree node.struct treenode struct treenode ...