publicclassSolution {
public TreeNode findDeepestNode(TreeNode root) {
if (root ==null) {
returnnull;
}
Queue<TreeNode> queue =new LinkedList<>();
queue.add(root);
TreeNode current =null;
while (!queue.isEmpty()) {
current = queue.poll();
if (current.left!=null) {
queue.add(current.left);
}
if (current.right!=null) {
queue.add(current.right);
}
}
return current; // The last node processed in BFS will be the deepest node }
}