112. 路徑總和
難度3.1.1 思路簡單給定乙個二叉樹和乙個目標和,判斷該樹中是否存在根節點到葉子節點的路徑,這條路徑上所有節點值相加等於目標和。
說明: 葉子節點是指沒有子節點的節點。
示例:給定如下二叉樹,以及目標和 sum = 22,
返回 true, 因為存在目標和為 22 的根節點到葉子節點的路徑 5->4->11->2。5
/ \4 8
/ / \
11 13 4
/ \ \
7 2 1
dfs,一直向下找葉子節點,若到某一葉子節點時sum = 0
,則說明該路徑滿足要求;
3.1.2 實現
public
boolean
haspathsum
(treenode root,
int sum)
// 左右節點為 null,根節點作為葉子節點,比較路徑和與根節點的大小
if(root.left == null && root.right==null)
// 遞迴左右子樹,看其中之一路徑和是否滿足條件
return
haspathsum
(root.left, sum - root.val)
||haspathsum
(root.right, sum - root.val)
;}
BSOJ 3799 訓練場 貪心 倍增
3799 模擬試題 訓練場 description 某中學有很多學生社團,其中電競社是最受歡迎的乙個。該社團中總共有n只遊戲戰隊,但是該中學只有乙個遊戲訓練場館,每次只能容納乙隻戰隊訓練。每只戰隊對訓練時間都有一定的要求,比如甲戰隊想要在a到b這段時間訓練,乙戰隊想要在c到d這段時間訓練,作為訓練場...
AcWing 329 圍欄障礙訓練場
大型補檔計畫 題目鏈結 考慮模擬這個過程。f i 0 1 表示從第 i 個圍欄的 左 右端點開始往下走,走到原點的最小花費。轉移很容易想到,就是考慮找到乙個往下走第乙個碰到的圍欄 j j i 若沒有可以直接走到原點 然後 f i 0 1 min f j 0 1 d 考慮快速找到往下走最先遇到的圍欄,...
洛谷 訓練場 高精度演算法
今天練習的是高精度演算法篇 前三題都是關於高精度演算法的加法 減法與乘法運算模板題,推薦以下部落格學習 既然ac了前三題,那麼下面兩題應該也不成問題了 p1255數樓梯 題意 樓梯上有n階,上一樓可以一步上一階,也可以一步上二階。編乙個程式,計算共有多少種不同的走法。分析 運用斐波那契數列的思想 當...