首页 > 代码库 > LeetCode --- Minimum Depth of Binary Tree

LeetCode --- Minimum Depth of Binary Tree

题目链接

求二叉树最小深度,最小深度指的是:从根节点走到最近的叶子结点的最短长度

附上代码:

 1 /**
 2  * Definition for binary tree
 3  * struct TreeNode {
 4  *     int val;
 5  *     TreeNode *left;
 6  *     TreeNode *right;
 7  *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
 8  * };
 9  */
10 class Solution {
11 public:
12     int minDepth(TreeNode *root) {
13         if (root == NULL) return 0;
14         if (root->left == NULL && root->right == NULL) return 1;
15         int ans(0x3f3f3f3f);
16         if (root->left != NULL)  ans = minDepth(root->left);
17         if (root->right != NULL) ans = min(ans, minDepth(root->right));
18         return ans + 1;
19     }
20 };