C語言遞迴之二叉樹的最小深度

2021-10-19 10:00:22 字數 694 閱讀 4518

題目描述

給定乙個二叉樹,找出其最小深度。

最小深度是從根節點到最近葉子節點的最短路徑上的節點數量。

說明: 葉子節點是指沒有子節點的節點。

示例

輸入:[3,9,20,null,null,15,7]

輸出:2

題目要求

/**

* definition for a binary tree node.

* struct treenode ;

*/int mindepth(struct treenode* root)

題解

/**

* definition for a binary tree node.

* struct treenode ;

*/int dfs(int d,struct treenode* r)

int mindepth(struct treenode* root)

搜尋到葉子節點時返回深度

當前節點的左右子節點之一為空時遞迴非空子節點

當前節點的左右節點都不為空時遞迴兩子節點取其最小值

C語言遞迴之二叉樹的最小深度

題目描述 給定乙個二叉樹,找出其最小深度。最小深度是從根節點到最近葉子節點的最短路徑上的節點數量。說明 葉子節點是指沒有子節點的節點。示例 輸入 3,9,20,null,null,15,7 輸出 2 題目要求 definition for a binary tree node.struct tree...

C語言遞迴之二叉樹的最大深度

題目描述 給定乙個二叉樹,找出其最大深度。二叉樹的深度為根節點到最遠葉子節點的最長路徑上的節點數。說明 葉子節點是指沒有子節點的節點。示例 給定二叉樹 3,9,20,null,null,15,7 3 9 20 157 返回它的最大深度 3 題目要求 1 2 definition for a bina...

二叉樹之 二叉樹深度

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