Leetcode 124. 二叉樹中的最大路徑和

在這里插入圖片描述

遞歸

在這里插入圖片描述

/*** 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:int ans = INT_MIN;int dfs(TreeNode* node) {if (node == nullptr) return 0;int left = max(dfs(node->left), 0); // 左子樹最大鏈和int right = max(dfs(node->right), 0); // 右子樹最大鏈和ans = max(node->val + left + right, ans); // 兩條鏈拼成路徑return max(left, right) + node->val;}int maxPathSum(TreeNode* root) {dfs(root);return ans;}
};

時間復雜度:O(n),其中 n 為二叉樹的節點個數。
空間復雜度:O(n)。最壞情況下,二叉樹退化成一條鏈,遞歸需要 O(n) 的棧空間。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/89766.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/89766.shtml
英文地址,請注明出處:http://en.pswp.cn/web/89766.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MTSC2025參會感悟:手工測試用例的智能化生成

目錄 一、測試用例生成的時代困境與 AI 機遇 1.1 傳統手工測試用例的固有痛點 1.2 AI 時代的測試新挑戰 1.3 智能化轉型的機遇窗口 二、智能用例生成的核心特性與產品功能 2.1 核心特性解析 2.2 四大核心產品功能 功能一:基于 PRD 理解的一鍵生成用例 功能二…

后臺管理系統登錄模塊(雙token的實現思路)

最近在寫后臺管理,這里分享一下我的登錄模塊的實現,我是使用reacttypescript實現的,主要是登錄的邏輯和雙token的處理方式,請求接口的二次封裝aixos1.首先我們需要渲染登錄界面的窗口,這個很簡單就不詳細講解了&#x…

第十四講 | AVL樹實現

AVL樹實現一、AVL的概念二、AVL樹的實現1、AVL樹的結構2、AVL樹的插入(1)、AVL樹插入一個值的大概過程(2)、平衡因子更新更新原則更新停止條件插入結點及更新平衡因子的代碼實現3、旋轉(1)、旋轉的原則&…

《P3398 倉鼠找 sugar》

題目描述小倉鼠的和他的基(mei)友(zi)sugar 住在地下洞穴中,每個節點的編號為 1~n。地下洞穴是一個樹形結構。這一天小倉鼠打算從從他的臥室(a)到餐廳(b),而…

錘子助手插件功能六:啟用攔截消息撤回

錘子助手插件功能六:啟用攔截消息撤回錘子助手插件功能六:啟用攔截消息撤回🛡? 插件簡介 攔截撤回消息,信息不再消失🔧 功能說明?? 使用風險與注意事項🎯 適合人群?? 結語錘子助手插件功能六&#xf…

深度解析:基于EasyX的C++黑白棋AI實現 | 算法核心+圖形化實戰

摘要 本文詳解C黑白棋AI實現,使用EasyX圖形庫打造完整人機對戰系統。涵蓋: 遞歸搜索算法(動態規劃優化) 棋盤狀態評估函數設計 圖形界面與音效集成 勝負判定與用戶交互 附完整可運行代碼資源文件,提供AI難度調節方案…

樹同構(Tree Isomorphism)

樹同構(Tree Isomorphism)?? 是圖論中的一個經典問題,主要研究兩棵樹在結構上是否“相同”或“等價”,即是否存在一種節點的一一對應關系,使得兩棵樹的結構完全一致(不考慮節點的具體標簽或位置&#xff…

分享如何在保證畫質的前提下縮小視頻體積實用方案

大文件在通過互聯網分享或上傳時會遇到很多限制,比如電子郵件附件大小限制、社交媒體平臺的文件大小要求等。壓縮后的視頻文件更小,更容易上傳到網絡、發送給他人或共享在社交平臺上。它是一款無需安裝的視頻壓縮工具,解壓后直接運行&#xf…

SpringBoot 統一功能處理(攔截器、@ControllerAdvice、Spring AOP)

文章目錄攔截器快速入門攔截器詳解攔截路徑攔截器執行流程全局控制器增強機制(ControllerAdvice)統一數據返回格式(ControllerAdvice ResponseBodyAdvice)??全局異常處理機制??(ControllerAdvice ExceptionHandler)全局數據…

建筑墻壁損傷缺陷分割數據集labelme格式7820張20類別

數據集格式:labelme格式(不包含mask文件,僅僅包含jpg圖片和對應的json文件)圖片數量(jpg文件個數):7820標注數量(json文件個數):7820標注類別數:20標注類別名稱:["Graffiti","Bearing","Wets…

圖書管理軟件iOS(iPhone)

圖書管理軟件iOS(iPhone)開發進度表2025/07/19圖書管理軟件開發開始一:圖書管理軟件開發iOS(iPhone)

MySQL配置性能優化

技術文章大綱:MySQL配置性能優化賽 引言 介紹MySQL性能優化的重要性,特別是在高并發、大數據場景下的挑戰。概述MySQL配置優化的核心方向(如內存、查詢、索引等)。引出比賽目標:通過配置調整提升MySQL性能指標&#xf…

uniapp微信小程序 實現swiper與按鈕實現上下聯動

1. 需求:頁面頂部展示n個小圖標。當選中某個圖標時,下方視圖會相應切換;反之,當滑動下方視圖時,頂部選中的圖標也會同步更新。 2. 思路: 上方scroll-view 區域渲染圖標,并且可左右滑動&#xff…

44.sentinel授權規則

授權規則是對請求者的身份做一個判斷,有沒有權限來訪問。 需求:一般網關負責請求的轉發到微服務,可以做身份判斷。但是如果具體某個微服務的訪問地址直接透露給了外部,不是經過網關訪問過來的。那這種就沒有經過網關也就無法進行身份判斷了。這時候就需要sentinel的授權規…

[硬件電路-55]:絕緣柵雙極型晶體管(IGBT)的原理與應用

一、IGBT的原理:MOSFET與BJT的復合創新IGBT(Insulated Gate Bipolar Transistor)是一種復合全控型電壓驅動式功率半導體器件,其核心設計融合了MOSFET(金屬氧化物半導體場效應晶體管)的高輸入阻抗&#xff0…

取消office word中的段落箭頭標記

對于一個習慣用WPS的人來說,office word中的段落箭頭讓人非常難受,所以想要取消該功能點擊文件-更多-選項然后在顯示界面,找到段落標記,取消勾選即可最終效果

Win11 上使用 Qume 搭建銀河麒麟V10 arm版虛擬機

安裝全程需要下載3個文件,可在提前根據文章1.1、2.1、2.2網址下載。 1 QEMU軟件簡介與安裝流程 QEMU(Quick Emulator)是一個開源軟件,可以模擬不同的計算機硬件行為(如模擬arm架構),并可以創建…

[Linux]進程 / PID

一、認識進程 --- PCB寫一個死循環程序執行起來,觀察進程ps ajx 顯示所有進程用分號可以在命令行的一行中執行多條指令,也可以用 && :ps ajx | head -1 && ps ajx | grep proc終止掉進程后再查看:所以 ./p…

【人工智能99問】門控循環但單元(GRU)的結構和原理是什么?(13/99)

文章目錄GRU(Gated Recurrent Unit)的結構與原理一、GRU的結構與原理1. 核心組件2. 計算原理(數學公式)二、GRU的使用場景三、GRU的優缺點優點:缺點:四、GRU的訓練技巧五、GRU的關鍵改進六、GRU的相關知識與…

去中心化協作智能生態系統

摘要: 本報告深入HarmonyNet系統的工程實現細節,從開發者視角出發,提供了模塊化的組件規范、基于API的數據交互協議、可直接執行的業務邏輯流程以及經過優化的、可渲染的系統圖表。報告的核心在于將V2.0的高層架構轉化為具體的模塊接口&#…