领扣(LeetCode)二叉树的所有路径 个人题解
生活随笔
收集整理的這篇文章主要介紹了
领扣(LeetCode)二叉树的所有路径 个人题解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
給定一個二叉樹,返回所有從根節點到葉子節點的路徑。
說明: 葉子節點是指沒有子節點的節點。
示例:
輸入: 1
/ \
2 3
\
5 輸出: ["1->2->5", "1->3"] 解釋: 所有根節點到葉子節點的路徑為: 1->2->5, 1->3
本題有多種解法,可參考https://blog.csdn.net/xiezongsheng1990/article/details/79574892的代碼。時間關系不累述。
遞歸算法的代碼如下:
class Solution {
List<String> ans = new LinkedList<>();
public List<String> binaryTreePaths(TreeNode root) {
if (root == null)
return ans;
GoNext(root, String.valueOf(root.val));
return ans;
}
public void GoNext(TreeNode t, String sans) {
if (t.left == null && t.right == null) {
ans.add(sans);
return;
}
if (t.left != null) {
GoNext(t.left, sans + "->" + t.left.val);
}
if (t.right != null) {
GoNext(t.right, sans + "->" + t.right.val);
}
}
}
總結
以上是生活随笔為你收集整理的领扣(LeetCode)二叉树的所有路径 个人题解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Pytorch-张量相加的四种方法 /
- 下一篇: pytorch拼接函数:torch.st