leetcode 865. Smallest Subtree with all the Deepest Nodes 具有所有最深节点的最小子树-耗时100

Problem: 865. Smallest Subtree with all the Deepest Nodes 具有所有最深节点的最小子树

解题过程

耗时100%,记录所有最长的路径,也就是到叶节点的路径,然后遍历所有最长路径,统计每个节点出现的次数,和最大值,第一条路径内最后等于最大值的节点就是所求。

Code

/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {} * }; */ class Solution { public: vector<vector<TreeNode*>> tr; vector<TreeNode*> tmp; int mx = INT_MIN; void dfs(TreeNode* root) { if(root==nullptr) return; tmp.push_back(root); if(root->left == nullptr && root->right == nullptr) { if((int)tmp.size() > mx) { tr.clear(); tr.push_back(tmp); mx = (int)tmp.size(); } else if((int)tmp.size() == mx) { tr.push_back(tmp); } tmp.pop_back(); return; } dfs(root->left); dfs(root->right); tmp.pop_back(); } TreeNode* subtreeWithAllDeepest(TreeNode* root) { dfs(root); if(tr.size() == 0) return nullptr; unordered_map<TreeNode*, int> ump; int mxmx = INT_MIN; for(int i = 0; i < tr.size(); i++) { for(int j = 0; j < tr[i].size(); j++) { ump[tr[i][j]]++; mxmx = max( mxmx, ump[tr[i][j]] ); } } TreeNode* pre = nullptr; for(int i = 0; i < tr[0].size(); i++) { if(ump[tr[0][i]]!=mxmx) { break; } pre = tr[0][i]; } return pre; } };

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

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

相关文章

leetcode 1123. Lowest Common Ancestor of Deepest Leaves 最深叶节点的最近公共祖先

Problem: 1123. Lowest Common Ancestor of Deepest Leaves 最深叶节点的最近公共祖先 解题过程 耗时100%&#xff0c;记录所有最长的路径&#xff0c;也就是到叶节点的路径&#xff0c;然后遍历所有最长路径&#xff0c;统计每个节点出现的次数&#xff0c;和最大值&#xff0…

SSD1306中文手册解析:电源控制指令全面讲解

SSD1306 电源控制全解析&#xff1a;从指令到实战的深度拆解在嵌入式显示系统中&#xff0c;一块小小的 OLED 屏幕背后&#xff0c;往往藏着比表面复杂得多的电源管理逻辑。你是否曾遇到过这样的问题&#xff1a;代码烧录成功、通信正常&#xff0c;但屏幕就是不亮&#xff1f;…

NotaGen部署实战:解决显存不足的8个技巧

NotaGen部署实战&#xff1a;解决显存不足的8个技巧 1. 引言 随着AI在艺术创作领域的不断深入&#xff0c;基于大语言模型&#xff08;LLM&#xff09;范式生成高质量古典符号化音乐的技术逐渐成熟。NotaGen正是这一方向的重要实践——它通过将音乐表示为类似文本的符号序列&…

工资单里的“幽灵账户”:钓鱼邮件正悄悄改写高校员工的银行信息

美国印第安纳大学&#xff08;Indiana University, IU&#xff09;向全体教职员工发出紧急安全警报&#xff1a;一批高度仿真的钓鱼邮件正在试图窃取校园账号凭据&#xff0c;目标直指——工资直接存款账户。一旦得手&#xff0c;攻击者将迅速登录学校人力资源系统&#xff0c;…

JupyterLab 禁用 Terminal 的三种方法(安装记录,仅供参考)

本文是我之前在安装和使用 JupyterLab 过程中的配置记录&#xff0c;仅作为思路参考。本文介绍了三种禁用JupyterLab Terminal功能的方法&#xff1a; 1&#xff09;通过UI配置&#xff08;推荐新手使用&#xff09;&#xff0c;在Settings中关闭Terminal选项&#xff1b; 2&am…

精准围猎:新型钓鱼工具包专攻意大利,本地化伪装成网络犯罪新范式

一场静默却高效的数字围猎正在意大利上演。攻击者不再使用千篇一律的英文钓鱼模板&#xff0c;而是祭出一套高度定制化的“本土化武器”——一款专门针对意大利公民与企业的新型网络钓鱼工具包&#xff08;Phishing Kit&#xff09;。这款工具包不仅复刻了意大利主流公共服务网…

一通电话撬开哈佛数据库:Vishing攻击如何绕过防火墙,直击“人肉漏洞”?

世界顶尖学府哈佛大学发布了一则低调却令人警醒的公告&#xff1a;其内部部分数据库遭遇未授权访问&#xff0c;泄露信息涵盖校友、捐赠者及部分师生的个人资料。令人意外的是&#xff0c;这次入侵并非源于零日漏洞或复杂APT攻击&#xff0c;而是一场看似“原始”的社会工程——…

AI智能二维码工坊部署验证:功能测试与回归测试流程

AI智能二维码工坊部署验证&#xff1a;功能测试与回归测试流程 1. 引言 1.1 业务场景描述 在现代数字化服务中&#xff0c;二维码作为信息传递的重要载体&#xff0c;广泛应用于支付、身份认证、广告推广、设备绑定等多个领域。随着应用场景的复杂化&#xff0c;用户对二维码…

Super Resolution技术解析:EDSR模型应用

Super Resolution技术解析&#xff1a;EDSR模型应用 1. 技术背景与核心价值 图像超分辨率&#xff08;Super Resolution, SR&#xff09;是计算机视觉领域的重要研究方向&#xff0c;旨在从低分辨率&#xff08;Low-Resolution, LR&#xff09;图像中恢复出高分辨率&#xff…

百考通AI文献综述功能:用智能技术打通学术写作的“第一公里”

在学术研究的旅程中&#xff0c;文献综述往往是决定成败的“第一公里”——它既是展示研究基础的窗口&#xff0c;也是提出创新问题的起点。然而&#xff0c;对许多学生而言&#xff0c;这“第一公里”却走得异常艰难&#xff1a;资料太多不知从何读起&#xff0c;观点庞杂难以…

OpenDataLab MinerU权限管理:多用户访问控制部署实战配置指南

OpenDataLab MinerU权限管理&#xff1a;多用户访问控制部署实战配置指南 1. 引言 1.1 业务场景描述 随着企业对智能文档处理需求的不断增长&#xff0c;基于大模型的文档理解服务逐渐成为办公自动化、知识管理与科研辅助的核心工具。OpenDataLab 推出的 MinerU2.5-1.2B 模型…

别再乱用 @State 了!鸿蒙状态管理避坑指南,看完省 3 天脱发时间

哈喽&#xff0c;兄弟们&#xff0c;我是 V 哥&#xff01; 最近有粉丝在群里发了个截图&#xff0c;代码里密密麻麻全是 State&#xff0c;看得我密集恐惧症都犯了。他说&#xff1a;“V 哥&#xff0c;我的 App 怎么越改越卡&#xff1f;明明只是改了列表里的一个文字&#x…

基于springboot搭建的疫情管理系统(11701)

有需要的同学&#xff0c;源代码和配套文档领取&#xff0c;加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码&#xff08;前后端源代码SQL脚本&#xff09;配套文档&#xff08;LWPPT开题报告&#xff09;远程调试控屏包运行 三、技术介绍 Java…

基于springBoot政府管理的系统(11702)

有需要的同学&#xff0c;源代码和配套文档领取&#xff0c;加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码&#xff08;前后端源代码SQL脚本&#xff09;配套文档&#xff08;LWPPT开题报告&#xff09;远程调试控屏包运行 三、技术介绍 Java…

你的鸿蒙 APP 包为啥这么大?资源瘦身终极方案,立减 30%

哈喽&#xff0c;兄弟们&#xff0c;我是 V 哥&#xff01; 咱们搞鸿蒙开发&#xff0c;最忌讳的就是把所有的东西都往包里塞。特别是到了 鸿蒙API 21&#xff0c;DevEco Studio 6.0 虽然强大&#xff0c;但你要是不会配置&#xff0c;不会偷懒&#xff0c;你的包体积绝对能吓跑…

HoRain云--Python量化投资:可视化工具全攻略

&#x1f3ac; HoRain 云小助手&#xff1a;个人主页 ⛺️生活的理想&#xff0c;就是为了理想的生活! ⛳️ 推荐 前些天发现了一个超棒的服务器购买网站&#xff0c;性价比超高&#xff0c;大内存超划算&#xff01;忍不住分享一下给大家。点击跳转到网站。 目录 ⛳️ 推荐 …

springboot经方药食两用服务平台(11703)

有需要的同学&#xff0c;源代码和配套文档领取&#xff0c;加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码&#xff08;前后端源代码SQL脚本&#xff09;配套文档&#xff08;LWPPT开题报告&#xff09;远程调试控屏包运行 三、技术介绍 Java…

Redis内存优化:如何在面试中脱颖而出?

文章目录Redis如何做内存优化 ?一、 Redis内存模型1.1 数据结构的选择1.2 数据结构的选择原则1.3 示例代码二、 Redis内存优化策略2.1 过期策略2.1.1 过期策略的选择2.1.2 过期策略的配置2.2 持久化机制2.2.1 RDB&#xff08;快照持久化&#xff09;2.2.2 AOF&#xff08;追加…

基因的阴与阳!

这是一个非常有趣且富有哲学意味的比喻&#xff01;虽然现代遗传学本身并不使用“阴”与“阳”这样的术语&#xff0c;但这个比喻巧妙地揭示了基因功能中蕴含的深刻的对立统一规律。我们可以从以下几个层面来理解“基因的阴与阳”&#xff1a;层面一&#xff1a;基因本身的“显…

手把手教你用7款AI论文神器:1天生成万字论文全学科覆盖指南

你是否曾对着一片空白的文档发呆&#xff0c;为论文的开头发愁&#xff1f;是否在浩如烟海的文献中迷失方向&#xff0c;不知从何读起&#xff1f;又或者&#xff0c;面对导师的修改意见感到一头雾水&#xff0c;不知如何下手&#xff1f;如果你正在经历这些论文写作的“至暗时…