首页 > 编程语言 > 详细

每日LeetCode - 111. 二叉树的最小深度(C语言)

时间:2021-05-29 17:54:41      阅读:35      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

C语言

使用了深度优先搜索的思想。

#include "stdbool.h"
#define NULL ((void *)0)

//Definition for a binary tree node.
struct TreeNode {
    int val;
    struct TreeNode *left;
    struct TreeNode *right;
};

//深度优先搜索
//时间复杂度:O(N),其中 N 是树的节点数。对每个节点访问一次。
int minDepth(struct TreeNode* root){
    if(root==NULL)
        return 0;
    else if(root->left==NULL&&root->right==NULL)
        return 1;
    else if(root->left==NULL)
        return minDepth(root->right)+1;
    else if(root->right==NULL)
        return minDepth(root->left)+1;
    else
        return fmin(minDepth(root->left),minDepth(root->right))+1;
}

 

每日LeetCode - 111. 二叉树的最小深度(C语言)

原文:https://www.cnblogs.com/vicky2021/p/14824941.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!