面試題27 二叉樹的映象

2021-08-25 16:35:50 字數 1236 閱讀 4583

/*

* 面試題27

:二叉樹的映象

* 題目:操作給定的二叉樹,將其變換為源二叉樹的映象。

* 思路:1

、找到不為空的節點。

2、然後交換左右節點。

3、遞迴呼叫此函式

*/classtreenode3 }

publicclassno27mirror

publicvoidmirror(treenode3

root)

if(

root

.left

==null&&

root

.right

==null)

//先交換當前節點的兩個子樹節點

treenode3

temp

=null;

temp

= root

.left;

root

.left

= root

.right;

root

.right

= temp;

//對交換後的節點做同樣的事

if(

root

.left

!=null)

if(

root

.right

!=null) }

//列印二叉樹

publicstaticvoidprinttree(treenode3

node)

system.out

.println(

node

.val);

printtree(

node

.left);

printtree(

node

.right);

} }

面試題27 二叉樹的映象

一 題目 請完成乙個函式,輸入乙個二叉樹,該函式輸出它的映象。二 關鍵 三 解釋 1.解題思路 先前序遍歷這棵樹的所有節點,如果遍歷到的節點有子節點,就交換它的兩個子節點。當交換完所有非葉節點的左 右節點之後,就得到了樹的映象。2.尚未證明 解題思路二 直接前序遍歷,不過先遍歷右邊的,再遍歷左邊的 ...

面試題27 二叉樹的映象

題目描述 操作給定的二叉樹,將其變換為源二叉樹的映象。解題思路 先前序遍歷這棵樹的每個結點,如果遍歷到的結點有子結點,就交換它的兩個子節點,當交換完所有的非葉子結點的左右子結點之後,就得到了樹的映象 純前序遍歷的遞迴 class solution 遞迴的另一種表達方式 struct treenode...

面試題27 二叉樹的映象

操作給定的二叉樹,將其變換為源二叉樹的映象。二叉樹的映象定義 源二叉樹 8 6 10 5 7 9 11 映象二叉樹 8 10 6 11 9 7 5考察點 數的遍歷演算法 畫 決抽象問題 遞迴運用。思路1 樹的問題用遞迴解決 易懂,清晰。class solution 思路2 迴圈的想法,用佇列暫存左右...