Olá
Implementei em C uma árvore binária, mas gostaria de implementá-la em Java. Como seria em Java?? E qto aos ponteiros de C??
Alguém poderia me ajudar, por favor??
Obrigada
Mel[color=darkblue][/color][color=red][/color]
Olá
Implementei em C uma árvore binária, mas gostaria de implementá-la em Java. Como seria em Java?? E qto aos ponteiros de C??
Alguém poderia me ajudar, por favor??
Obrigada
Mel[color=darkblue][/color][color=red][/color]
Coloca o se código em C aqui para eu dar uma olhada!
Olá, Mel,
Uma idéia é você criar uma classe que representa um nó da árvore, contendo como atributos outros nós (filhos). Mais ou menos assim:
public class No {
private int label;
private No filhoEsquerdo;
private No filhoDireito;
Este é o exemplo de uma árvore binária.
Para adicionar ou retirar um nó da árvore, você faz as devidas atualizações nas referências.
[]´s e boa sorte,
Tatiana
Olá
Já agradecendo a atenção de vcs…!
Tenho esse código em Java que faz a inserção de n°s numa árvore binária, está certinhu. Porém não sei ao certo como ficaria isso inserindo em um banco de dados PostgreSQL, isto é, não o INSERT INTO, mas a lógica.
Desdes já agradeço novamente!!
Mel
Olá
Já agradecendo a atenção de vcs…!
Tenho esse código abaixo em Java que faz a inserção de n°s numa árvore binária, está certinhu. Porém, não sei ao certo como ficaria isso inserindo em um banco de dados PostgreSQL, isto é, não o INSERT INTO, mas a lógica.
/* Cria uma nova célula para ser inserida na árvore. */
Celula novaCelula = new Celula(chave);
Celula atual = raiz;
while(atual != null) { //se a árvore não estiver vazia
/* Caso a chave seja menor do que a chave da célula atual. */
if (chave < atual.getChave()) {
/* Caso a célula atual não tenha filho esquerdo, a novaCelula é inserida à esquerda da célula atual e o método pára. */
if(atual.getCelulaEsquerda() == null) {
atual.setCelulaEsquerda(novaCelula);
return;
}
atual = atual.getCelulaEsquerda();
}
/* Caso a chave seja maior do que a chave da célula atual. */
else if(chave > atual.getChave()) {
/* Caso a célula atual não tenha filho direito, a novaCelula é inserida à direita da célula atual e o método pára. */
if(atual.getCelulaDireita() == null) {
atual.setCelulaDireita(novaCelula);
return;
}
atual = atual.getCelulaDireita();
}
/* Caso a chave já esteja contida na árvore, imprime uma mensagem na tela e o método pára. */
else {
System.out.println("Chave já armazenada na árvore.");
return;
}
}
if(raiz == null)
raiz = novaCelula;
Partes utilizadas no código acima. Pertencem à classe Celula:
[code] public int getChave() { return chave; }
public Celula getCelulaEsquerda() { return celulaEsquerda; }
public void setCelulaEsquerda(Celula esquerda) { celulaEsquerda = esquerda; }
public Celula getCelulaDireita() { return celulaDireita; }[/code]
Desdes já agradeço novamente!!
Mel
Olá!
Seria possível me mostrar o código de árvore em C? Estou tentando fazer em Java também, caso eu consiga direitinho postarei aqui em seguida!
Obrigada!