太久没做递归了用分治法想了一个很蠢的方式分成了好几步。遍历以p为根节点的树看是否有q有的话返回p遍历以q为根节点的树看是否有p有的话返回q到了这里说明p和q是“分开的”。以root为根节点遍历左子树看是“p和q都有”那就是p和q都在左子树里计算p和q的深度取二者深度最小值减去1这个位置对应的节点就是最近的公共祖先“只有p或只有q”那root就是最近的公共祖先返回root“p和q都没有”那就是p和q都在右子树里。。。太智障了。。亏我想得出来。。法一这个题难在递推问题的定义上dfs(ListNode root,ListNode p,ListNode q)不是定义为“以root为根节点的树中p和q的最近公共祖先”而是定义为“以root为根节点的树是否有p或者q”注意不要用下面这种写法递归问题的定义非常混乱还是采用官方给出的递归子问题定义更清晰返回值是boolean。
Leetcode hot100 二叉树的最近公共祖先【中等】
太久没做递归了用分治法想了一个很蠢的方式分成了好几步。遍历以p为根节点的树看是否有q有的话返回p遍历以q为根节点的树看是否有p有的话返回q到了这里说明p和q是“分开的”。以root为根节点遍历左子树看是“p和q都有”那就是p和q都在左子树里计算p和q的深度取二者深度最小值减去1这个位置对应的节点就是最近的公共祖先“只有p或只有q”那root就是最近的公共祖先返回root“p和q都没有”那就是p和q都在右子树里。。。太智障了。。亏我想得出来。。法一这个题难在递推问题的定义上dfs(ListNode root,ListNode p,ListNode q)不是定义为“以root为根节点的树中p和q的最近公共祖先”而是定义为“以root为根节点的树是否有p或者q”注意不要用下面这种写法递归问题的定义非常混乱还是采用官方给出的递归子问题定义更清晰返回值是boolean。
相关文章
联想电脑专属:F12启动盘选择后,一步步图解配置CentOS 7带GUI服务器(含网络和阿里镜像源设置)
联想电脑实战:F12启动CentOS 7图形化服务器全流程指南在联想电脑上部署带图形界面的CentOS 7服务器,不仅能满足基础服务运行需求,还能通过可视化操作降低管理门槛。本文将针对联想设备的UEFI启动特性和图形化组件安装痛点,提供从U…
无代码+AI API:5个可快速变现的智能应用构建指南
1. 项目概述:用无代码工具撬动AI应用市场最近几年,人工智能的热度居高不下,每天似乎都有新的AI产品冒出来。很多人心里都装着几个绝妙的AI应用点子,但一想到要写代码、搭服务器、处理复杂的部署,热情就凉了半截。我自己…
从AlexNet到VGGNet:为什么说‘小卷积核’和‘深度’是提升模型精度的关键?
从AlexNet到VGGNet:小卷积核与深度网络的进化密码当我们在2012年首次见证AlexNet在ImageNet竞赛中一鸣惊人时,卷积神经网络(CNN)的世界仿佛被打开了一扇新的大门。然而,仅仅两年后,VGGNet就以更优雅的设计理念刷新了人们对深度学习…
MAA明日方舟助手终极指南:解放双手的全自动游戏体验
MAA明日方舟助手终极指南:解放双手的全自动游戏体验 【免费下载链接】MaaAssistantArknights 《明日方舟》小助手,全日常一键长草!| A one-click tool for the daily tasks of Arknights, supporting all clients. 项目地址: https://gitco…
飞思卡尔QorIQ处理器架构演进与多核通信处理技术解析
1. 飞思卡尔QorIQ处理器架构演进与多核通信处理技术解析在嵌入式系统和网络通信领域,处理器的性能、能效和集成度直接决定了设备的处理能力和市场竞争力。从早期的单核处理器到如今动辄数十核心的异构计算平台,其演进历程不仅是半导体工艺进步的缩影&…
免费解锁AMD Ryzen隐藏性能:5分钟掌握终极硬件调试工具
免费解锁AMD Ryzen隐藏性能:5分钟掌握终极硬件调试工具 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://g…
Linux命令:write
write 命令 基本介绍 write 是 Linux 系统中用于向其他用户终端发送消息的命令。它允许用户与同一系统上的其他登录用户进行实时通信。write 是系统用户之间进行即时通讯的工具。 资料合集:https://pan.quark.cn/s/6fe3007c3e95、https://pan.quark.cn/s/561de99256…
微信防撤回终极指南:如何永久保存被撤回的重要消息
微信防撤回终极指南:如何永久保存被撤回的重要消息 【免费下载链接】wechat_no_revoke 项目地址: https://gitcode.com/gh_mirrors/we/wechat_no_revoke 你是否曾经因为错过微信中被撤回的重要消息而感到遗憾?无论是商务谈判的关键条款、朋友的真…
STM32 CubeMX实战:多串口重定向printf的工程化配置与调试
1. 为什么需要多串口printf功能 在嵌入式开发中,调试信息的输出是开发过程中不可或缺的一环。传统的单串口调试方式在简单项目中还能应付,但当项目复杂度上升,特别是需要同时与多个外设通信时,单一的调试串口就显得捉襟见肘了。想…
赛马娘DMM版中文汉化与性能优化全攻略:告别日文界面与卡顿烦恼
赛马娘DMM版中文汉化与性能优化全攻略:告别日文界面与卡顿烦恼 【免费下载链接】umamusume-localify Localify "ウマ娘: Pretty Derby" DMM client 项目地址: https://gitcode.com/gh_mirrors/um/umamusume-localify 还在为赛马娘DMM版的日文界面而…
终极指南:3分钟学会用uesave编辑虚幻引擎游戏存档
终极指南:3分钟学会用uesave编辑虚幻引擎游戏存档 【免费下载链接】uesave Rust library and CLI to read and write Unreal Engine save files 项目地址: https://gitcode.com/gh_mirrors/ue/uesave 你是否曾经因为游戏存档损坏而束手无策?或者想…
GPT-4驱动的Python地理可视化四库实战指南
1. 项目概述:当大模型遇上地理信息,四款Python地图库的实战筛选你有没有试过让GPT-4直接画一张带标注的行政区划图?我试过——它能用ASCII字符拼出个“中国轮廓”,也能在Markdown里用emoji堆个“北京→上海→广州”的箭头链&#…
音乐文件解锁实战指南:3个场景解决你的播放困境
音乐文件解锁实战指南:3个场景解决你的播放困境 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址: https://git…
从Landsat到高分系列:手把手教你选择适合自己项目的遥感卫星数据
遥感卫星数据选型实战指南:从参数解析到场景化应用当面对GEE、PIE-Engine等云平台上数十种遥感数据源时,许多研究者常陷入选择困难——Landsat的历史连续性、Sentinel-2的红边波段优势、高分系列的亚米级分辨率各有千秋。本文将打破常规参数罗列式对比&a…
MC68302 AutoBaud技术:硬件级串口波特率自动检测原理与实现
1. 项目概述:MC68302 AutoBaud技术深度解析在嵌入式系统开发,尤其是那些需要与外部设备进行串口通信的场景里,最让人头疼的环节之一就是波特率匹配。想象一下,你设计了一个数据采集终端,需要连接来自不同厂家、不同年代…
Zotero Duplicates Merger:5步彻底清理文献库重复条目
Zotero Duplicates Merger:5步彻底清理文献库重复条目 【免费下载链接】ZoteroDuplicatesMerger A zotero plugin to automatically merge duplicate items 项目地址: https://gitcode.com/gh_mirrors/zo/ZoteroDuplicatesMerger 还在为文献库中堆积如山的重…
利用随机有限集理论对蜂群的ILQR和MPC控制研究附Matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室🍊个人信条:格物致知,完整Matlab代码及仿真咨询…
为什么你的Gemini邮件CTE低于行业均值2.8倍?:从Prompt架构到发送时序的深度归因
更多请点击: https://intelliparadigm.com 第一章:为什么你的Gemini邮件CTE低于行业均值2.8倍?:从Prompt架构到发送时序的深度归因 Gemini邮件的客户转化效率(CTE)显著偏低,根本原因常被误判为…