Ayuda implementar arbol trie en java

Iniciado por Cooltan, 31 Marzo 2011, 12:53 PM

0 Miembros y 1 Visitante están viendo este tema.

Cooltan

Hola muy buenas a todos/as, tengo un problema con un proyecto en JAVA, este es el enunciado para que entendais mi duda:

Desarrollar un TAD (clase) en java que implemente un arbol jd, se emplea cuando la información almacenada en los nodos tiene mas de una dimensión, en nuestro caso se almacenaran ristras de caracteres (alfabeto español), asi las dimensiones seran todos y cada uno de los caracteres del alfabeto, y para cada ristra almacenada, el valor de cada dimensión sera la frecuencia de aparición de cada caracter. En el arbol hay dos tipos de nodos, unos internos,  que discriminan para la ordenación y que almacenan el caracter empleado para discriminar y un vector de 10 enlaces, correspondiendo a las frecuencias de 0 a 9 de dicho caracter y un vector de 10 enlaces que apuntan, si es necesario, a una lista simplemente encadenada con las palabras almacenadas ( nodos de información).

Lo voy a implementar con un arbol trie, dicho arbol tiene dos nodos, uno de desviación y otro de información. el problema es que no se como implementarlo, he visto y buscado por internet y encontre algo pero es en C, y yo en java soy novato.

Me podeis ayudar? estoy equivocado o acierto en hacerlo con un arbol trie? y de ser asi, me podeis ayudar?

Gracias

Tryptophan

Creo que entendí lo que querés hacer... A ver... Estás utilizando un lenguaje con orientación a objetos, así que te conviene usar el poder del paradigma para abstraer el arbol. Me refiero a:

Public Class Nodo{

     private NodoDesviacion hijoIzq;
     private NodoInformacion hijoDer;
     Dictionary<char,int> ocurrenciasDeLosCaracteres;
     private String ristraCaracteres;
}


Bien.. Básicamente lo que tenemos acá es un objeto que tiene 2 hijos del mismo tipo. Cada uno almacena la ristra de caracteres y tiene un diccionario para decir la ocurrencia de cada uno. Sos novato en esto (según vos), así te recomiendo primero ver las posibilidades que te da el lenguaje y después encarar esto.

Saludos!