leetcode之二叉樹的映象

2021-07-04 10:29:46 字數 1151 閱讀 9830

invert binary tree

invert a binary tree.

4

/ \

2 7

/ \ / \

1 3 6 9

to
4

/ \

7 2

/ \ / \

9 6 3 1

幾周前,我用的是遞迴解法,如下

/**

* definition for a binary tree node.

* struct treenode ;

*/struct treenode* inverttree(struct treenode* root)

else if(h->left)

else if(h->right)

else if(h->right==null && h->left==null)

return h;

}}

當時用的是c語言,

68 / 68 test cases passed.

status:  accepted

runtime: 

0 ms

然後,今天又在劍指offer上看到這題,想用非遞迴實現:

/**

* definition for a binary tree node.

* struct treenode

* };

*/class solution

if(h->left!=null &&h->right==null)

if(h->left == null && h->right==null)

else break;

}if(h->left != null && h->right!=null)

} } return root;

} };

用的是c++實現的,耗時多一點

68 / 68 test cases passed.

status: 

accepted

runtime: 

4 ms

submitted: 

4 minutes ago

LeetCode之映象二叉樹(簡單 二叉樹)

問題描述 給定乙個二叉樹,檢查它是否是映象對稱的。例如,二叉樹 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說明 如果你可以運用遞迴和迭代兩種方法解決這個問題,會很加分。遞迴 definit...

筆試面試之二叉樹的映象

輸入一顆二元查詢樹,將該樹轉換為它的映象,即在轉換後的二元查詢樹中,左子樹的結點都大於右子樹的結點。用遞迴和迴圈兩種方法完成樹的映象轉換。例如輸入 8 6 10 5 7 9 11 輸出 8 10 6 11 9 7 5 定義二元查詢樹的結點為 struct bstreenode a node in t...

二叉樹之 二叉樹深度

二叉樹深度 獲取最大深度 public static int getmaxdepth treenode root 二叉樹寬度 使用佇列,層次遍歷二叉樹。在上一層遍歷完成後,下一層的所有節點已經放到佇列中,此時佇列中的元素個數就是下一層的寬度。以此類推,依次遍歷下一層即可求出二叉樹的最大寬度 獲取最大...