题解 | #二叉树的最小深度#
二叉树的最小深度
http://www.nowcoder.com/practice/e08819cfdeb34985a8de9c4e6562e724
虽题目是“二叉树最小深度”,但指的是:根节点到某个叶节点的最短路径
所以,在遍历二叉树时,要额外判断是否是一个叶节点
class Solution { public: int run(TreeNode* root) { if (root == nullptr) return 0; int left = run(root->left); int right = run(root->right); if (left == 0 || right == 0) return right == 0 ? left + 1 : right + 1; return min(left, right) + 1; } }