請完成乙個函式,輸入乙個二叉樹,該函式輸出它的映象。
例如輸入:
4
/ \
27/ \ / \13
69
映象輸出:
4
/ \
72/ \ / \96
31
示例 1:
輸入:root = [4,2,7,1,3,6,9]限制:輸出:[4,7,2,9,6,3,1]
0 <= 節點個數 <= 1000
注意:
本題與主站 226 題相同:
總結上面的過程,我們可以得出求一棵樹映象的過程:先前序遍歷
這顆樹的每乙個節點,如果遍歷的節點有子節點,就交換它的兩個子節點,當交換完所有非葉子節點
的左、右子節點之後,就得到了樹的映象
。
/**
* definition for a binary tree node.
* public class treenode
* }*/class
solution
//交換根節點的左右子節點,root的左右孩子是null也可以用swap函式,只要root不是null即可
//畢竟root是null的話,root.left,root.right就空指標異常了
27 二叉樹的映象
請完成乙個函式,輸入乙個二叉樹,該函式輸出它的映象。例如輸入 4 2 7 1 3 6 9 映象輸出 4 7 2 9 6 3 1 示例 1 輸入 root 4,2,7,1,3,6,9 輸出 4,7,2,9,6,3,1 限制 解法 通過畫圖讓自己有乙個清楚的思路,然後使用遞迴的方法進行翻轉。題目比較簡單...
二叉樹 27題 二叉樹的映象
請完成乙個函式,輸入乙個二叉樹,該函式輸出它的映象。例如輸入 4 2 7 1 3 6 9 映象輸出 4 7 2 9 6 3 1 示例1 輸入 root 4,2,7,1,3,6,9 輸出 4,7,2,9,6,3,1 限制 0 節點個數 1000根據二叉樹映象的定義,考慮遞迴遍歷 dfs 二叉樹,交換每...
映象二叉樹 劍指 Offer 27 二叉樹的映象
請完成乙個函式,輸入乙個二叉樹,該函式輸出它的映象。例如輸入 4 2 7 1 3 6 9 映象輸出 4 7 2 9 6 3 1 示例 1 輸入 root 4,2,7,1,3,6,9 輸出 4,7,2,9,6,3,1 什麼是映象二叉樹,就是交換每乙個節點的左右子樹,重構的二叉樹就稱之為原二叉樹的映象。...