成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

聊聊每日算法之路徑總和

開發(fā) 前端 算法
給定一個(gè)二叉樹和一個(gè)目標(biāo)和,判斷該樹中是否存在根節(jié)點(diǎn)到葉子節(jié)點(diǎn)的路徑,這條路徑上所有節(jié)點(diǎn)值相加等于目標(biāo)和。

[[426794]]

本文轉(zhuǎn)載自微信公眾號(hào)「三分鐘學(xué)前端」,作者sisterAn。轉(zhuǎn)載本文請(qǐng)聯(lián)系三分鐘學(xué)前端公眾號(hào)。

關(guān)于樹基礎(chǔ)看這里:適合初學(xué)者的樹

給定一個(gè)二叉樹和一個(gè)目標(biāo)和,判斷該樹中是否存在根節(jié)點(diǎn)到葉子節(jié)點(diǎn)的路徑,這條路徑上所有節(jié)點(diǎn)值相加等于目標(biāo)和。

說明: 葉子節(jié)點(diǎn)是指沒有子節(jié)點(diǎn)的節(jié)點(diǎn)。

示例: 給定如下二叉樹,以及目標(biāo)和 sum = 22 ,

  1.    5 
  2.      / \ 
  3.     4   8 
  4.    /   / \ 
  5.   11  13  4 
  6.  /  \      \ 
  7. 7    2      1 

返回 true , 因?yàn)榇嬖谀繕?biāo)和為 22 的根節(jié)點(diǎn)到葉子節(jié)點(diǎn)的路徑 5->4->11->2。

解題思路:

只需要遍歷整棵樹

如果當(dāng)前節(jié)點(diǎn)不是葉子節(jié)點(diǎn),遞歸它的所有子節(jié)點(diǎn),傳遞的參數(shù)就是 sum 減去當(dāng)前的節(jié)點(diǎn)值;

如果當(dāng)前節(jié)點(diǎn)是葉子節(jié)點(diǎn),判斷參數(shù) sum 是否等于當(dāng)前節(jié)點(diǎn)值,如果相等就返回 true,否則返回 false。

代碼實(shí)現(xiàn):

  1. var hasPathSum = function(root, sum) { 
  2.   // 根節(jié)點(diǎn)為空 
  3.   if (root === nullreturn false
  4.    
  5.   // 葉節(jié)點(diǎn) 同時(shí) sum 參數(shù)等于葉節(jié)點(diǎn)值 
  6.   if (root.left === null && root.right === nullreturn root.val === sum
  7.  
  8.   // 總和減去當(dāng)前值,并遞歸 
  9.   sum = sum - root.val 
  10.   return hasPathSum(root.leftsum) || hasPathSum(root.rightsum); 
  11. }; 

解題思路:

只需要遍歷整棵樹

  • 如果當(dāng)前節(jié)點(diǎn)不是葉子節(jié)點(diǎn),遞歸它的所有子節(jié)點(diǎn),傳遞的參數(shù)就是 sum 減去當(dāng)前的節(jié)點(diǎn)值;
  • 如果當(dāng)前節(jié)點(diǎn)是葉子節(jié)點(diǎn),判斷參數(shù) sum 是否等于當(dāng)前節(jié)點(diǎn)值,如果相等就返回 true,否則返回 false。

代碼實(shí)現(xiàn):

  1. var hasPathSum = function(root, sum) { 
  2.   // 根節(jié)點(diǎn)為空 
  3.   if (root === nullreturn false
  4.    
  5.   // 葉節(jié)點(diǎn) 同時(shí) sum 參數(shù)等于葉節(jié)點(diǎn)值 
  6.   if (root.left === null && root.right === nullreturn root.val === sum
  7.  
  8.   // 總和減去當(dāng)前值,并遞歸 
  9.   sum = sum - root.val 
  10.   return hasPathSum(root.leftsum) || hasPathSum(root.rightsum); 
  11. }; 

 

leetcode:https://leetcode-cn.com/problems/path-sum/solution/javascript-lu-jing-zong-he-by-user7746o/

 

責(zé)任編輯:武曉燕 來源: 三分鐘學(xué)前端
相關(guān)推薦

2018-03-27 10:06:26

對(duì)象存儲(chǔ)演進(jìn)

2023-04-28 08:06:04

低代碼AI智能

2021-09-03 23:01:58

CSS 技巧代碼重構(gòu)

2021-10-29 07:25:32

螺旋矩陣整數(shù)

2021-10-28 19:33:36

矩陣圖像內(nèi)存

2021-08-30 14:34:10

有效算法字符

2021-11-12 09:44:03

字符串算法復(fù)雜度

2021-11-19 07:54:40

前端

2022-01-04 11:31:15

不同路徑DP

2022-06-17 07:49:14

緩存LRU

2022-02-18 08:26:12

TopK數(shù)組面試題

2021-11-12 09:30:46

滑動(dòng)窗口算法

2021-09-03 09:41:36

字符串時(shí)間復(fù)雜度

2021-11-04 09:59:03

動(dòng)態(tài)規(guī)劃策略

2020-02-19 19:18:02

緩存查詢速度淘汰算法

2023-05-30 07:58:01

谷歌搜索算法

2022-06-28 15:13:12

Vuediff 算法

2023-10-09 07:11:03

排序算法序列

2023-11-28 09:19:12

2021-10-26 00:23:26

算法高頻元素
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 久久精品男人的天堂 | 日日摸夜夜添夜夜添特色大片 | 日本一区二区在线视频 | 狠狠操狠狠| 久久久久国 | 亚洲视频免费在线播放 | 亚洲精品一区在线观看 | 欧美久久精品一级c片 | 亚洲综合在线一区二区 | 狠狠热视频| 午夜免费视频 | 国产成人一区二区三区电影 | 成人在线亚洲 | 色婷婷综合久久久中字幕精品久久 | 精品国产乱码久久久久久蜜退臀 | 欧美一区二区三区在线观看 | 国产亚洲精品精品国产亚洲综合 | 国产成人综合一区二区三区 | 天天干天天玩天天操 | 国产69久久精品成人看动漫 | 一区中文字幕 | 久久蜜桃av | 成人在线中文字幕 | 欧美在线国产精品 | 欧美一区二区在线观看 | 国产一区二区三区在线 | 国产99久久久国产精品 | 免费视频二区 | 日本一区二区三区在线观看 | 国产高清视频 | 国产免费一级一级 | 中文字幕在线一区二区三区 | 国产一区二区三区视频 | 国产一区二区三区免费 | 国产一二区视频 | 亚洲视频一区在线 | 欧美福利久久 | 亚洲在线一区二区三区 | 欧美电影免费网站 | 精品一区二区三区在线观看 | 欧美精品久久久久 |