題解九十七

2021-10-08 13:48:05 字數 814 閱讀 1696

思路:雙重遞迴

根據題意可得,路徑不需要從根節點開始,也不需要在葉子節點結束,但是路徑方向必須是向下的(只能從父節點到子節點)。所以我們求的路徑可分為三部分:

(1)當前節點作為頭結點的滿足條件的路徑數量;

(2)當前節點的左子樹中滿足條件的路徑數量

(3)當前節點的右子樹中滿足條件的路徑數量

我們設定helper函式來遞迴當前節點作為頭結點的滿足條件的路徑數量,每經過乙個節點執行sum - root.val,並判斷sum是否為0,如果為零的話,則找到滿足條件的一條路徑。

當root為空時,返回0即可。

class

solution

return

helper

(root, sum)

+pathsum

(root.left, sum)

+ pathsum (root.right, sum);}

private

inthelper

(treenode root,

int sum)

sum = sum - root.val;

int res =0;

if(sum ==0)

return res +

helper

(root.left,sum)

+helper

(root.right,sum);}

}

愛情九十七課,降低期待

愛情裡所有的問題,都是期待的問題。也正因為期待,我們常常成為自己人生問題的製造者。惜惜牙疼的要命,她撥通了男友的手機 你快回來!我牙好疼!正在和牌友激烈桌遊中的男友,一邊出牌,一邊敷衍說 好好,玩完這一局,我就回去 惜惜頓時大怒 現在就回來!馬上,就一局,馬上就好了 我說現在!好,好 馬上 現在!嗯...

愛情九十七課,降低期待

愛情裡所有的問題,都是期待的問題。也正因為期待,我們常常成為自己人生問題的製造者。惜惜牙疼的要命,她撥通了男友的手機 你快回來!我牙好疼!正在和牌友激烈桌遊中的男友,一邊出牌,一邊敷衍說 好好,玩完這一局,我就回去 惜惜頓時大怒 現在就回來!馬上,就一局,馬上就好了 我說現在!好,好 馬上 現在!嗯...

題解三十七

給定乙個 沒有重複 數字的序列,返回其所有可能的全排列。示例 思路 回溯法問題用遞迴求解,可以聯絡上樹的遍歷,我們可以將決策路徑畫成一棵樹,回溯的過程就是這棵樹的遍歷過程。回溯問題關於已選集合和候選集合,例如下圖,在進行第一次選擇時,全部的 3 個數都可以選擇,候選集合的大小為 3。在第二次選擇時,...