#1302
Medium Algorithms Deepest leaves sum
Tree Depth-First Search Breadth-First Search Binary Tree
86.5% acceptance
Feb 27, 2026
4831
126
Given the root of a binary tree, return the sum of values of its deepest leaves.
Solution
Rust
Time O(n²)
Space O(n)
use std::rc::Rc;
use std::cell::RefCell;
impl Solution {
pub fn deepest_leaves_sum(root: Option<Rc<RefCell<TreeNode>>>) -> i32 {
if root.is_none() { return 0; }
let mut queue = std::collections::VecDeque::new();
queue.push_back(root.unwrap());
let mut level_sum = 0;
while !queue.is_empty() {
let sz = queue.len();
level_sum = 0;
for _ in 0..sz {
let node = queue.pop_front().unwrap();
let n = node.borrow();
level_sum += n.val;
if let Some(l) = n.left.clone() { queue.push_back(l); }
if let Some(r) = n.right.clone() { queue.push_back(r); }
}
}
level_sum
}
}