Estou estudando estrutura de dados por uma bela apostila do Caelum.
Porém, não encontrei nada sobre a estrutura de dados de árvore binária.
Alguém sabe dizer se a Caelum disponibiliza algo do tipo?
Estou precisando de exemplos de código de remoção e inserção.
Recomendo este livro que é muito didático e abrangente ISBN: [telefone removido]…
Abs,
J
javaxpython
Tô precisando de um código de remoção em árvores binárias.
Só achei aqui o de inserção.
public void Inserir(No novo, No anterior){
if (anterior != null){
if (novo.ObtemValor() < anterior.ObtemValor())
//Como o novo nó tem valor menor do que o do nó anterior, desce para a esquerda do nó anterior.
inicio.filho_Esq=this.Insere(novo, anterior.filho_Esq);
else
if(novo.ObtemValor()>anterior.ObtemValor())
//Como o novo nó tem valor maior do que o do nó anterior, desce para a direita do nó anterior.
anterior.p_Dir=this.Insere(filho, anterior.filho_Dir);
else
//Caso seja um nó já existente, sai do método.
return;
}else
//Insere o novo nó como folha.
anterior = novo;
}
Alguém pode me ajudar aê?
R
RafaFloripa
javaxpython:
Tô precisando de um código de remoção em árvores binárias.
Só achei aqui o de inserção.
public void Inserir(No novo, No anterior){
if (anterior != null){
if (novo.ObtemValor() < anterior.ObtemValor())
//Como o novo nó tem valor menor do que o do nó anterior, desce para a esquerda do nó anterior.
inicio.filho_Esq=this.Insere(novo, anterior.filho_Esq);
else
if(novo.ObtemValor()>anterior.ObtemValor())
//Como o novo nó tem valor maior do que o do nó anterior, desce para a direita do nó anterior.
anterior.p_Dir=this.Insere(filho, anterior.filho_Dir);
else
//Caso seja um nó já existente, sai do método.
return;
}else
//Insere o novo nó como folha.
anterior = novo;
}
Alguém pode me ajudar aê?
mas dae como faz?
só pode apagar folhas??
se apagar um galho, o que faz com os nodos filhos, pensa bem, é bem facil de implementar, só tem que saber a ideia