findrightsiblings
берет ссылку на узел и возвращает его правого брата, т. Е. Крайний левый узел на своем уровне справа. Это вызывает исключение нулевого указателя. Пожалуйста, помогите.
public static Node find(Node root, int k) {
if (root == null)
return null;
if (k == 0)
return root;
Node m = find(root.left, k - 1);
if (m == null)
m = find(root.right, k - 1);
return m;
}
public static Node findRightSibling(Node node) {
Node y = node.parent;
int count = 1;
while (true) {
if (y.right != null) {
Node js = find(y.right, count - 1);
if (js != null)
return js;
}
y = y.parent;
count++;
}
}