面試題27 二叉樹的映象

2021-10-05 17:51:27 字數 568 閱讀 6013

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

二叉樹的映象定義:源二叉樹 

8/ \

6 10

/ \ / \

5 7 9 11

映象二叉樹

8/ \

10 6

/ \ / \

11 9 7 5

考察點:數的遍歷演算法;畫**決抽象問題;遞迴運用。

思路1:樹的問題用遞迴解決**易懂,清晰。

class solution

};思路2:迴圈的想法,用佇列暫存左右子樹,出隊的時候進行交換。

class solution

else

break;}}

};思路3:迴圈,用棧的思想跟佇列差不多,只不過乙個調整順序不同。

class solution

if (node->left != null) s.push(node->left);

if (node->right != null) s.push(node->right);

}    }

};

面試題27 二叉樹的映象

面試題27 二叉樹的映象 題目 操作給定的二叉樹,將其變換為源二叉樹的映象。思路 1 找到不為空的節點。2 然後交換左右節點。3 遞迴呼叫此函式 classtreenode3 publicclassno27mirror publicvoidmirror treenode3 root if root ...

面試題27 二叉樹的映象

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

面試題27 二叉樹的映象

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