劍指offer 二叉樹 二叉樹的映象

2021-08-07 04:50:48 字數 814 閱讀 4213

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

二叉樹的映象定義:

源二叉樹

8/ \

6 10

/ \ / \

5 7 9 11

映象二叉樹

8/ \

10 6

/ \ / \

11 9 7 5

1,交換左右子樹

2,遞迴交換左右子樹的左右子節點

/**

* */

package offertest;

/** * * title:mirror

* * * description:

* *

*@author 田茂林

*@data 2023年8月20日 下午9:07:06

*/public

class

mirror

// 交換根的左右子節點

treenode temp = root.left;

root.left = root.right;

root.right = temp;

// 遞迴交換根的左右子樹

if (root.left != null)

mirrors(root.left);

if (root.right != null)

mirrors(root.right);

}public

static

void

main(string args)

}

劍指offer 二叉樹 二叉樹搜尋樹

package bst import j a.util.public class bst if pre.length 0 in.length 0 treenode root new treenode pre 0 for int i 0 i in.length i return root 判斷給定陣列...

劍指Offer 二叉樹 對稱的二叉樹

含有兩道題,都從樹的遞迴入手 請完成乙個函式,輸入乙個二叉樹,該函式輸出它的映象。解題思路 映象翻 只需要遍歷二叉樹,每次訪問乙個結點時,交換其左右子樹。實現 definition for a binary tree node.class treenode def init self,x self....

劍指offer 二叉樹 序列化二叉樹

題目描述 請實現兩個函式,分別用來序列化和反序列化二叉樹 解題思路 1,序列化和反序列化都可以通過前序遍歷 根左右 來進行 2,序列化遇到null用 來標明 3,反序列化的時候遇到 則停止 package 二叉樹 title 請實現兩個函式,分別用來序列化和反序列化二叉樹 public class ...