Ir para conteúdo
Fórum Script Brasil

araqh

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre araqh

araqh's Achievements

0

Reputação

  1. araqh

    Arvores

    Olá a todos, Estou a criar uma classe que permita construir uma árvore de letras e estou mesmo a precisar de um empurrãozinho. A ideia é regrupar as palavras numa árvore na qual cada arco representa uma letra. Uma palavra seria então representada pelo caminho da raíz até ao nó que contem o valor "fimPalavra". É no array que estou a fazer tudo, não utiliso a Jtree. Na verdade trata-se de uma maneira comptacta de representar um conjunto de palavras, como um dicionario por exemplo. O meu problema é quero acrescentar dois métodos ao meu código aqui em baixo. Um metodo para acrecentar uma palavra à árvore e outro para testar se uma determinada palavra já existe na árvore. Se alguém tiver alguma ideia ou indicação por minima que seja, não hesite pois será certamente util. Aqui vai o meu código: import java.io.*; import java.util.*; public class ArvoreLetra { char letra; boolean fimPalavra; ArrayList letrasSeguintes; /* constructor */ ArvoreLetra(char c) { letra = c; fimPalavra = false; letrasSeguintes = new ArrayList(); } /* permite modificar a variável fimPalavra para indicar se uma subArvore corresponde ou não ao fim de uma palavra*/ void setFimPalavra(boolean b) { fimPalavra = b; } /*testa si a árvore corresponde ao fim de uma palavra, ultima letra*/ boolean isFimDePalavra() { return fimPalavra; } /* testa se o caractere c é uma das letras a seguir à letra corrente */ boolean contemLetra(char c) { for (int i=0; i<letrasSeguintes.size(); i++) { ArvoreLetra a = (ArvoreLetra)letrasSeguintes.get(i); if (a.letra == c) return true; } return false; } /* retorna a subArvore (letra seguinte) que corresponde ao caractere c */ ALettre getSubArvore(char c) { for (int i=0; i<letrasSeguintes.size();i++) { ArvoreLetra a = (ArvoreLetra)letrasSeguintes.get(i); if (a.letra == c) return a; } return null; } /*void acrescentarPalavra(String palavra) { } boolean contemPalavra(String palavra) { }*/ } Obrigado.
×
×
  • Criar Novo...