​力扣解法匯總513-找樹左下角的值

失落夏天 2022-06-23 14:57:05 阅读数:143

解法513-左下角左下下角

 目錄鏈接:

力扣編程題-解法匯總_分享+記錄-CSDN博客

GitHub同步刷題項目:

https://github.com/September26/java-algorithms

原題鏈接:力扣


描述:

給定一個二叉樹的 根節點 root,請找出該二叉樹的 最底層 最左邊 節點的值。

假設二叉樹中至少有一個節點。

示例 1:

輸入: root = [2,1,3]
輸出: 1
示例 2:

輸入: [1,2,3,4,null,5,6,null,null,7]
輸出: 7
 

提示:

二叉樹的節點個數的範圍是 [1,104]
-231 <= Node.val <= 231 - 1 


來源:力扣(LeetCode)
鏈接:https://leetcode.cn/problems/find-bottom-left-tree-value
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。

解題思路:

* 解題思路:
* 用層序便利的方式可以解决,取最底層的list的第一個節點即可

代碼:

public class Solution513 {
public int findBottomLeftValue(TreeNode root) {
List<TreeNode> list = new ArrayList<>();
list.add(root);
TreeNode treeNode = levelSearch(list);
return treeNode.val;
}
private TreeNode levelSearch(List<TreeNode> list) {
List<TreeNode> nextList = new ArrayList<>();
for (TreeNode node : list) {
if (node.left != null) {
nextList.add(node.left);
}
if (node.right != null) {
nextList.add(node.right);
}
}
if (nextList.size() == 0) {
return list.get(0);
}
return levelSearch(nextList);
}
}

版权声明:本文为[失落夏天]所创,转载请带上原文链接,感谢。 https://gsmany.com/2022/174/202206231418259515.html