Arvore com letras (Java)

araqh

Membro
Olá a todos,

Estou a tentar criar uma classe que permita construir uma árvore de letras. Mas não estou a conseguir testar se por exemplo a árvore já contém uma determinada palavra (indicada pelo utilizador). Também quero poder acrescentar uma palavra à árvore.
Alguém me pode dar algumas indicações?

Envio-vos aqui o meu código com alguns comentários:

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 isFinDeMot()
   { 
      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.
 
Última edição:
Back
Topo