113 路徑總和 II

2021-10-10 06:45:21 字數 1292 閱讀 8932

給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。

說明: 葉子節點是指沒有子節點的節點。

示例:給定如下二叉樹,以及目標和 sum = 22,

5

/ \ 48/

/ \ 11134

/ \ / \

7251

返回:

[[5

,4,11

,2],

[5,8

,4,5

]]

該題是典型的遞迴題,有dfs,bfs兩種方式進行。

dfs: 遞迴,不遞迴情況下要用到stack

bfs: 不遞迴,要用到queue

dfs做法:

/**

* definition for a binary tree node.

* public class treenode

* }*/class

solution

public

void

dfs(treenode root,

int val,

int sum, list

p)dfs

(root.left, val + root.val, sum, p)

;dfs

(root.right, val + root.val, sum, p)

; p.

remove

(p.size()

-1);

}}

bfs方式:

/**

* definition for a binary tree node.

* public class treenode

* }*/class

solution

if(node.left != null)

if(node.right != null)

}return res;

}public

void

getpath

(treenode node)

collections.

reverse

(temp)

; res.

add(

newlinkedlist

(temp));

}}

參考:

遞迴深入講述

113 路徑總和 II

給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和 sum 22,4 8 11 13 4 7 2 5 1 返回 5,4,11,2 5,8,4,5 definition for a binary tr...

113 路徑總和 II

給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。說明 葉子節點是指沒有子節點的節點。示例 給定如下二叉樹,以及目標和 sum 22,definition for a binary tree node.class treenode object def init s...

113 路徑總和 II

113.路徑總和 ii 給定乙個二叉樹和乙個目標和,找到所有從根節點到葉子節點路徑總和等於給定目標和的路徑。vector pathsum treenode root,int sum void dfs treenode root,int sum,vector ans,vector one ans on...