思想:
若此樹就乙個節點或者沒有節點,則為對稱。
若此樹不值乙個節點,則分別比較其左節點和右節點的值。
然後在比較左節點和右節點的比較中,在分別比較,左節點的左子樹跟右節點的右子樹,左節點的右子樹,跟右節點的左子樹是否對稱相等。
同時注意,左節點為空和左節點不為空右節點不為空場景。
type tree struct
left *tree
right *tree
}/*判斷二叉樹是否映象對稱,程式設計實現*/
func mirrortree(tree tree) bool
return mirrortreecore(tree.left, tree.right)
}func mirrortreecore(left, right *tree) bool
if right == nil
if left.data != right.data
return mirrortreecore(left.left, right.right) && mirrortreecore(left.right, right.left)
}
判斷二叉樹是否對稱
題目描述 time limit 1000 ms memory limit 256 mb 層次遍歷的方式輸入乙個二叉樹,判斷這個二叉樹的結構 即不用管結點的值 是否映象對稱。輸入輸出格式 輸入描述 輸入一行字母,其中 表示空節點 字母長度小於1000 輸出描述 如果輸入的二叉樹對稱,輸出yes,否則輸...
二叉樹是否是映象對稱
給定一棵二叉樹,判斷它是否是自身的映象 即 是否對稱 例如 下面這棵二叉樹是對稱的 1 2 2 3 4 4 3 下面這棵二叉樹不對稱。1 2 2 3 3 備註 希望你可以用遞迴和迭代兩種方法解決這個問題 二 示例 三 演算法 思路 用高度大於2的二叉樹舉例來說吧,也就是上面第乙個例子,只要結點1的左...
判斷二叉樹是否是對稱二叉樹
給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 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 遞迴實現 需要滿足兩個子樹 根節點值相同 根節點1的左子樹與根節點2右子樹相同 根節點1...