leecode 111.简单题 给定一个二叉树,计算二叉树的最小深度

最小深度是从根节点到最近叶子节点的最短路径上的节点数量。
叶子节点是指没有子节点的节点


class Solution {public int minDepth(TreeNode root) {/**第一反应是通过一个递归解决;*/if(root == null){return 0;}int lmd = minDepth(root.left);int rmd = minDepth(root.right);if(Math.max(lmd,rmd)==0){return 1;}if(Math.min(lmd,rmd)==0){return Math.max(lmd,rmd)+1;}return Math.min(lmd,rmd)+1;}
}

两次提交:第一次未注意叶子节点的定义;
第二次按照
(1)传入点无子节点
(2)传入点有一个节点为空节点
(3)传入节点无空子节点
分类讨论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/36318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MYSQL存储过程的创建

关于存储过程的题目 1、创建存储过程,查看user表中的所有数据 2、创建存储过程avg_order_quantity,返回所有订单的平均工资 3、创建存储过程show_max_bprice,用来查看bookS的单价最贵的价格 4、创建存储过程show_min_bprice,用来查看bookS的单价最低的价格,并将…

JVM之双亲委派机制

1.双亲委派机制 在Java中,类加载器具有层次结构。每个Java实现的类加载器中保存了一个成员变量叫“父”类加载器(parent),可以理解为上级,并不是继承关系。应用程序类加载器的parent父加载器是扩展类加载器&#xff0…

ulimit报错

问题 执行命令“ulimit -c 2048 ”时报错:“bash: ulimit: core file size: cannot modify limit: Operation not permitted” 原因 权限不够。 解决办法 执行命令“sudo gedit /etc/security/limits.conf”打开文件limits.conf文件内添加内容如下:…

在 Java 中从 for 循环中移出元素的原理及解决方案

在 Java 中从 for 循环中移出元素的原理及解决方案 在 Java 编程中,从集合中移除元素是常见操作。然而,直接在 for 循环中删除或移出元素往往会导致 ConcurrentModificationException(数组下标越界)。本文将详细解释这种情况发生…

【索引】数据库索引之散列索引

目录 1、什么是散列? 2、如何评价一个散列函数的好坏? 3、散列中的桶溢出处理 4、散列在索引中的应用 4、顺序索引和散列索引的比较 1、什么是散列? 顺序文件组织的一个缺点是我们必须访问索引结构来定位数据,或者必须使用二…

最经典实用的Buck电路仿真与设计 /Psim仿真Buck电路详解

为了节省大家时间,减少找软件的麻烦,提供了软件下载地址,如果需要下载,请访问下面的网站进行购买: Psim电力仿真软件安装-送教程和维也纳整流电路仿真-可远程安装-淘宝网 (taobao.com) 或者加作者微信,发20元微信红包便可直接获取下载软件,如果找不到软件,有需要下载的…

软件协同开发是一种通过团队合作来创建软件的开发方法

软件协同开发是一种通过团队合作来创建软件的开发方法。与传统的瀑布模型相比,软件协同开发强调团队成员之间的合作和沟通,以实现更高效的开发过程和更优质的软件产品。 在软件协同开发中,团队成员通过一系列工具和技术来协同工作。这些工具…

MATLAB2024a下的BP神经网络分类工具箱预测

1 打开BP神经网络分类工具箱GUI界面 图1-1 如图1-1所示,虽然叫神经网络模式识别但确实是BP神经网络分类工具箱,如果想要使用其他神经网络模型,可以打开左边的深度网络网络设计器,如图1-2、图1-3所示: 图1-2 图1-3 2 导…

uniapp条件编译使用教学(#ifdef、#ifndef)

条件编译介绍: 条件编译是用特殊的注释作为标记,在编译时根据这些特殊的注释,将注释里面的代码编译 到不同平台。 #ifdef和#ifndef的区别: #ifdef APP-PLUS————只在APP显示 #ifndef APP-PLUS————除了APP不显示…

SQL面试题练习 —— 无效搜索

目录 1 题目2 建表语句3 题解 题目来源:百度。 1 题目 现有一份用户搜索日志,包含用户ID,时间,用户搜索内容。定义 无效搜索:如果用户下一次搜索内容中包含本次搜索内容,则认为本次搜索为无效搜索。请查询用…

以入站营销为核心,撬动To B业务增长新杠杆

传统的营销模式已逐渐失效,企业需要寻找新的营销策略来吸引客户并推动业务增长。Outbound marketing(出站营销)作为一种传统的营销方式,虽然在过去发挥了重要作用,但在数字化时代,其局限性也日益明显。 数字…

use embeddings stored in vector db to reduce work for LLM generating response

题意:使用存储在向量数据库中的嵌入来表示,以减少大型语言模型(LLM)生成响应的工作量。 问题背景: Im trying to understand what the correct strategy is for storing and using embeddings in a vector database, …

重温react-08

react中的createContext使用方式 简介一下,就是组件之间可以互相通信的比较好用的传值方式,话不多说直接上代码。 以下介绍的是类组件中的方式,在函数组件中不是如此使用的。 定义一个通用的方法 import { createContext } from "react…

论文学习 --- RL Regret-based Defense in Adversarial Reinforcement Learning

前言 个人拙见,如果我的理解有问题欢迎讨论 (●′ω`●) 原文链接:https://www.ifaamas.org/Proceedings/aamas2024/pdfs/p2633.pdf 研究背景 深度强化学习(Deep Reinforcement Learning, DRL)在复杂和安全关键任务中取得了显著成果,例如自动驾驶。然而,DRL策略容易受…

【杂记-浅谈IPv6过渡技术之6to4网络技术】

IPv6过渡技术之 6to4网络技术 一、6to4网络概述二、6to4网络配置 一、6to4网络概述 6to4是一种IPv6转换技术,它允许IPv6流量通过IPv4网络传输。6to4网络的地址可以表示为2002:IPv4地址::/48,其中前48位(2002:a.b.c.d)由分配给路由…

python调用c++ ctype list传数组与for if 列表推导式

python调用c ctype list传数组 关于ctype与python list的转换很简单,大家记住下面两条就够用了,后面是练习 list传进C数组 import numpy as np from ctypes import * mylist [101, -101, ..., 101, -101]##your list mycbytearray (c_byte * len(my…

优刻得首个「国产千卡智算集群」落地,支持智源千亿大模型训练

在人工智能引领的时代浪潮中,算力已成为技术进步与创新的核心驱动力。面对当下AI算力需求的飙升、高端AI芯片供应受限的挑战,加之OpenAI带来的技术封锁,唯有坚定不移的发展自主可控的国产技术方案,持续壮大国产智算集群规模&#…

在postgrel中使用hints

在 PostgreSQL 中,可以使用查询提示(Query Hints)来影响查询优化器的行为,但需要注意的是,PostgreSQL 并不像一些商业数据库那样有丰富的提示语法,而是提供了一些基本的方式来引导优化器。 使用查询提示的基本方式 使用 /*+ … / 注释提示: PostgreSQL 支持在 SQL 查询…

参数调优论文

基于Java EE的性能调优方法研究 - 中国知网 (cnki.net) 基于机器学习的Hadoop参数调优方法 - 中国知网 (cnki.net) 基于机器学习的数据库系统自动调参研究 - 中国知网 (cnki.net) 基于强化学习的文件系统性能自动调优及参数安全评估技术 - 中国知网 (cnki.net) 基于贝叶斯优…

如何在ArcGIS Pro中提取行政区划

我们在《2024版有审图号的SHP行政区划》一文中,为你分享过全国省市县级的行政区划。 现在再为你分享一下,如何在ArcGIS Pro中提取目标范围行政区划的方法,你还可在以文末查看领取该行政区划数据的方法。 直接选择 在菜单栏上点击一下选择下…