import java.util.*;
import java.util.LinkedList;
import java.util.Queue;
public class Main {
/**
//该段代码仅用于调试,提交时请注释该段代码
class TreeNode<T> {
public T data;
public TreeNode<T> left;
public TreeNode<T> right;
}
*/
public int solution(TreeNode<Integer> root) {
if (root == null) {
return 0;
}
Queue<TreeNode<Integer>> queue = new LinkedList<>();
queue.add(root);
int depth = 0;
while (!queue.isEmpty()) {
depth++;
int size = queue.size();
for (int i = 0; i < size; i++) {
TreeNode<Integer> node = queue.poll();
if (node.left != null) {
queue.add(node.left);
}
if (node.right != null) {
queue.add(node.right);
}
}
}
return depth;
}
}