題目描述
給定乙個二叉樹,返回所有從根節點到葉子節點的路徑。
說明: 葉子節點是指沒有子節點的節點。
示例:
輸入:
1/ \23
\ 5
輸出:[
"1->2->5"
,"1->3"
]解釋: 所有根節點到葉子節點的路徑為:1-
>2-
>5,
1->
3
實現思路
這個題目比較簡單,就是對二叉樹數進行深度優先遍歷,在遍歷的過程中將當前節點的值儲存在字串中,直到沒有子節點,就將這個遍歷出的結果字串存入結果陣列中。
該方法的時間複雜度為o(n),空間複雜度為o(n)。
**實現
/**
* definition for a binary tree node.
* function treenode(val)
*//**
* @param root
* @return
*/var
binarytreepaths
=function
(root)
resstr += root.val +
'->'
if(root.left)
if(root.right)
}buildpath
(root,'')
return res
};
提交結果
LeetCode257 二叉樹的所有路徑
好多天沒寫演算法了,好多天也不更了。今天開始繼續啊,加油!先來乙個簡單的二叉樹練練手哈 給定乙個二叉樹,返回從根節點到葉節點的所有路徑。例如,給定以下二叉樹 1 2 3 5所有根到葉路徑是 1 2 5 1 3 二叉樹先序遍歷一下,遞迴把節點值挨個加入就好了 definition for a bina...
leetcode 257 二叉樹的所有路徑
給定乙個二叉樹,返回所有從根節點到葉子節點的路徑。說明 葉子節點是指沒有子節點的節點。示例 輸入 1 2 3 5 輸出 1 2 5 1 3 解釋 所有根節點到葉子節點的路徑為 1 2 5,1 3 definition for a binary tree node.struct treenode cl...
Leetcode 257 二叉樹的所有路徑
給定乙個二叉樹,返回所有從根節點到葉子節點的路徑。說明 葉子節點是指沒有子節點的節點。示例 輸入 1 2 3 5 輸出 1 2 5 1 3 解釋 所有根節點到葉子節點的路徑為 1 2 5,1 3首先要寫一下我自己的錯誤的思路 利用回溯,到了葉子結點後將當前遍歷到的一位陣列加入到要返回的二維陣列中,當...