Boa noite a todos
Estou enfrentando uma certa dificuldade com um algoritmo sobre arvores binárias de pesquisa (e um pouco de recursividade tbm
).
Segue meu código:
public boolean getPai(Node node, int valor) {
if (node == null)
return false;
if (node.data == valor)
return false;
if (node.left != null && node.left.data == valor || node.right != null && node.right.data == valor)
return true;
if (valor < node.data)
return getPai(node.left, valor);
else
return getPai(node.right, valor);
}
public int getTio (int valor) {
return getTio(root, valor);
}
public int getTio(Node node, int valor) {
if (node.data == valor)
return -1;
if (node.left != null && getPai(node.left, valor) == true)
return node.left.left.data;
if (node.right != null && getPai(node.right, valor) == true)
return node.right.right.data;
if (valor < node.data)
return getTio(node.left, valor);
else
return getTio(node.right, valor);
}
esse getTio n funciona de jeito nenhum…
gostaria de saber se alguem pode me dar uma dica…
Obrigado!