LeetCode 543:巧解二叉树直径问题
LeetCode543给你一棵二叉树的根节点返回该树的直径。二叉树的直径是指树中任意两个节点之间最长路径的长度。这条路径可能经过也可能不经过根节点root。两节点之间路径的长度由它们之间边数表示。示例输入root [1,2,3,4,5]输出3解释3 取路径 [4,2,1,3] 或 [5,2,1,3] 的长度。Python解法# Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # self.right right class Solution: def diameterOfBinaryTree(self, root: Optional[TreeNode]) - int: max_len 0 def dfs(node): nonlocal max_len if not node: return 0 left_depth dfs(node.left) right_depth dfs(node.right) max_len max(max_len, left_depth right_depth) return max(left_depth, right_depth) 1 dfs(root) return max_lenJava解法class Solution { int max 0; public int diameterOfBinaryTree(TreeNode root) { dfs(root); return max; } int dfs(TreeNode node) { if(node null) return 0; int left dfs(node.left); int right dfs(node.right); max Math.max(max, left right); return Math.max(left, right) 1; } }C解法class Solution { public: int max_len 0; int diameterOfBinaryTree(TreeNode* root) { dfs(root); return max_len; } int dfs(TreeNode* node) { if(!node) return 0; int left dfs(node-left); int right dfs(node-right); max_len max(max_len, left right); return max(left, right) 1; } };

相关新闻

VPDMA配置实战:从描述符列表到YUV格式处理的嵌入式视频数据搬运

VPDMA配置实战:从描述符列表到YUV格式处理的嵌入式视频数据搬运

1. 项目概述:VPDMA在HDVPSS中的核心角色在嵌入式视频处理系统里,数据搬运的效率直接决定了整个流水线的性能上限。当你在处理1080p60fps甚至4K的视频流时,CPU如果被频繁地用于在内存和各个视频处理IP(如缩放器、去隔行器、色彩空间…

2026/7/21 17:16:43 阅读更多 →
LeetCode 538:二叉搜索树转换为累加树

LeetCode 538:二叉搜索树转换为累加树

LeetCode538给出二叉 搜索 树的根节点 root,该树的节点值各不相同,请你将其转换为累加树(Greater Sum Tree),将其转换为一个更大的树,使得原始二叉搜索树中的每个节点值都变为原本值加上原本二叉搜索树中所…

2026/7/21 17:16:43 阅读更多 →
嵌入式PRCM模块配置实战:电源时钟复位管理原理与调试指南

嵌入式PRCM模块配置实战:电源时钟复位管理原理与调试指南

1. 项目概述:PRCM模块在嵌入式系统设计中的核心地位在嵌入式系统,尤其是复杂的片上系统(SoC)设计中,功耗、稳定性和实时性往往是工程师需要反复权衡的“不可能三角”。一个高性能的处理器,如果其所有模块在…

2026/7/21 17:16:43 阅读更多 →

最新新闻

Spring Boot 3.5与MyBatis-Plus整合开发实战指南

Spring Boot 3.5与MyBatis-Plus整合开发实战指南

1. 为什么选择Spring Boot 3.5与MyBatis-Plus组合在Java企业级应用开发领域,Spring Boot 3.5和MyBatis-Plus的组合已经成为许多开发团队的首选技术栈。Spring Boot 3.5作为Spring框架的最新稳定版本,带来了对Java 17的全面支持、GraalVM原生镜像编译能力…

2026/7/21 21:35:53 阅读更多 →
DepthFM深度估计算法:如何实现单步推理的高效单目深度感知

DepthFM深度估计算法:如何实现单步推理的高效单目深度感知

DepthFM深度估计算法:如何实现单步推理的高效单目深度感知 【免费下载链接】depth-fm [AAAI 2025, Oral] DepthFM: Fast Monocular Depth Estimation with Flow Matching 项目地址: https://gitcode.com/gh_mirrors/de/depth-fm 单步推理生成精确深度图 - De…

2026/7/21 21:35:53 阅读更多 →
构建高效三日学习框架:从工程化思维到Spring Boot实战

构建高效三日学习框架:从工程化思维到Spring Boot实战

最近在技术社区看到一个很有意思的现象:很多刚接触编程的大学生,甚至是已经有一定基础的同学,在尝试学习新技术时,常常陷入一种“看似努力,实则无效”的循环。他们可能花三天时间看了几十个小时的视频,敲了…

2026/7/21 21:35:53 阅读更多 →
Java 数据处理 - 身份证号和手机号脱敏

Java 数据处理 - 身份证号和手机号脱敏

身份证号和手机号脱敏 1、基本介绍 身份证号脱敏:保留前 6 位和后 4 位,中间用 * 号代替 # 例如110105********1234手机号脱敏:保留前 3 位和后 4 位,中间 4 位用 * 号代替 # 例如138****56782、具体实现 身份证号脱敏 public sta…

2026/7/21 21:35:53 阅读更多 →
告别云端依赖:这款离线音频转录工具如何让语音转文字变得简单又安全?

告别云端依赖:这款离线音频转录工具如何让语音转文字变得简单又安全?

告别云端依赖:这款离线音频转录工具如何让语音转文字变得简单又安全? 【免费下载链接】buzz Buzz transcribes and translates audio offline on your personal computer. Powered by OpenAIs Whisper. 项目地址: https://gitcode.com/GitHub_Trending…

2026/7/21 21:35:53 阅读更多 →
SGLang框架下DeepSeek-V4大模型部署与优化实践

SGLang框架下DeepSeek-V4大模型部署与优化实践

1. 项目概述:SGLang与DeepSeek-V4的技术融合在自然语言处理领域,模型部署和优化一直是工程实践中的核心挑战。最近在青稞社区的技术分享中,关于在SGLang上部署和优化DeepSeek-V4的讨论引起了广泛关注。作为一名长期从事大模型部署的工程师&am…

2026/7/21 21:34:53 阅读更多 →

日新闻

Octane Render与C4D汉化版安装与优化指南

Octane Render与C4D汉化版安装与优化指南

1. Octane Render与C4D的黄金组合:为什么选择这个方案?在三维创作领域,渲染器的选择往往决定了作品的最终呈现质量和工作效率。作为Cinema 4D(C4D)用户,Octane Render的GPU加速特性与实时预览功能&#xff…

2026/7/21 0:00:19 阅读更多 →
GPMC接口设计:异步/同步模式与多路复用配置实战

GPMC接口设计:异步/同步模式与多路复用配置实战

1. GPMC接口设计:从硬件连接到软件配置的全局视角在嵌入式系统开发中,尤其是基于TI Sitara系列如AM263x这类高性能微控制器的项目里,外部存储器的扩展几乎是绕不开的一环。无论是存放大量非易失性代码的NOR Flash,还是作为高速数据…

2026/7/21 0:00:19 阅读更多 →
UE5 GAS框架下RPG被动技能系统:从核心原理到实战实现

UE5 GAS框架下RPG被动技能系统:从核心原理到实战实现

1. 项目概述:UE5 GAS RPG被动技能的核心价值在UE5里用GAS(Gameplay Ability System)做RPG游戏,主动技能像是你手里的武器,按一下打一下,逻辑直接,反馈也快。但被动技能,它更像是你身…

2026/7/21 0:00:19 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/21 8:48:31 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/21 5:34:47 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/21 8:25:39 阅读更多 →

月新闻