C++ | Leetcode C++题解之第111题二叉树的最小深度

题目:

题解:

cpp 复制代码
class Solution {
public:
    int minDepth(TreeNode *root) {
        if (root == nullptr) {
            return 0;
        }

        queue<pair<TreeNode *, int> > que;
        que.emplace(root, 1);
        while (!que.empty()) {
            TreeNode *node = que.front().first;
            int depth = que.front().second;
            que.pop();
            if (node->left == nullptr && node->right == nullptr) {
                return depth;
            }
            if (node->left != nullptr) {
                que.emplace(node->left, depth + 1);
            }
            if (node->right != nullptr) {
                que.emplace(node->right, depth + 1);
            }
        }

        return 0;
    }
};
相关推荐
apcipot_rain11 小时前
C++转Java日记(04)
java·开发语言·c++
WL学习笔记13 小时前
vector模拟实现
c++
蜗牛一步步往上爬15 小时前
第十六章 C++语言在深度学习中的应用
开发语言·c++·深度学习
文丑颜不良啊19 小时前
LeetCode2221~2240题目解析
java·leetcode
Navigator_Z19 小时前
LeetCode //C - 1317. Convert Integer to the Sum of Two No-Zero Integers
c语言·算法·leetcode
wo_jack19 小时前
C++ 入门笔记(十六):第16课 vector 模拟实现十问十答 —— 从三指针到迭代器失效
c++·后端·面试·stl·vector
D e re k ZH20 小时前
C++ 标准库算法全景指南
数据结构·c++·算法
文丑颜不良啊21 小时前
LeetCode2161~2180题目解析
java·leetcode
雪落漂泊21 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法
不会算法的笨小孩1 天前
异常的使用以及会出现的问题
开发语言·c++·c++11·异常