Вы находитесь на странице: 1из 16

Estructuras de datos

Unidad 3. Almacenamiento

Carrera: Desarrollo de Software


4 semestre

Programa de la asignatura:
Estructura de datos

Unidad 3
Almacenamiento

Clave:
Ingeniera
15142419

TSU
16142419

Universidad Abierta y a Distancia de Mxico

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

ndice
Presentacin de la Unidad ................................................................................................... 3
Propsitos de la Unidad ....................................................................................................... 3
Competencia especfica ....................................................................................................... 3
3. Almacenamiento .............................................................................................................. 3
3.1. rboles .......................................................................................................................... 4
3.2. rboles binarios ............................................................................................................ 9
Cierre de la unidad ............................................................................................................. 15
Para saber ms .............................................................................................................. 16
Fuentes de consulta ........................................................................................................... 16

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

Presentacin de la Unidad
En la unidad 3 se abordarn dos temas sumamente importantes para las estructuras de
datos: rboles y rboles binarios. stos son temas de estudio elementales en cuanto al
almacenamiento de datos se refiere; tienen que ver con la forma de almacenar datos de
forma jerrquica.
Los rboles sirven para realizar bases de datos donde la bsqueda y almacenamiento sean
ptimos, ya que en un rbol los datos se almacenan no de forma lineal, como en una pila o
en una cola, donde los datos que entran slo se pueden leer en el respectivo orden de
entrada. Tambin sirven para encriptar archivos, o para crear compiladores.
En las dos unidades anteriores se estudiaron primero las diferentes estructuras de datos
como son pilas, listas y colas, sus algoritmos, ejemplos, etc. En la unidad 2 se abordaron
los temas de bsqueda y ordenacin de datos y, finalmente, en esta unidad conoceremos y
aprenderemos a utilizar los rboles.

Propsitos de la Unidad
Al trmino de esta unidad logrars:
Emplear los conceptos de rboles y rboles binarios que te permitan dar soluciones
a problemticas de almacenamiento de datos.

Competencia especfica
Almacenar archivos con un orden jerrquico para permitir bsquedas, recorridos seguros y
eficientes mediante el uso de rboles y rboles binarios.

3. Almacenamiento
Esta unidad con la que se cierra el estudio de la asignatura Estructuras de datos es de vital
importancia en tu carrera, ya que aprenderemos formas jerrquicas de almacenamiento de
datos. Desde hace mucho tiempo en el mundo han existido y siguen existiendo las
jerarquas: en los gobiernos, la milicia, las iglesias, las familias, etc. Asimismo, en trminos
informticos, en lo que se refiere al almacenamiento de datos, existen las jerarquas. Los
rboles son formas no lineales de almacenamiento de datos. En la siguiente figura
podemos ver la imagen de un rbol de genealoga, dicho rbol pertenece a un programa de
genealoga de descarga gratuita en internet. La siguiente figura muestra un ejemplo de un

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

rbol genealgico generado por un software que puedes descargar de forma gratuita en la
direccin que aparece debajo de la figura; un rbol genealgico es un claro ejemplo del uso
prctico que podemos darle al tema de rboles y rboles binarios.

rbol de genealoga
Tomada de Red.ahorro.net.

3.1. rboles
Un rbol es un objeto que comienza con una raz (root) y se extiende en varias
ramificaciones o lneas (edges), cada una de las cuales puede extenderse en
ramificaciones, hasta terminar finalmente en una para que puedas conocer de una forma
genrica acerca del tema de los rboles hoja (Goodrich y Tamassia, 2010, pp. 229-232).
Esta referencia te proporcionar un panorama ms amplio del tema de los rboles y su
aplicacin prctica en actividades del da a da. Los autores de la bibliografa mencionada
describen los rboles, su algoritmo, aplicaciones y los complementan con ejemplos;
primeramente desarrollan la definicin del concepto de rboles, enseguida plantean
situaciones de nuestra vida cotidiana donde empleamos las estructuras de rboles; un claro
ejemplo lo vemos en la imagen anterior, donde en un rbol genealgico se representan las
diferentes ramificaciones de los antepasados de una persona o familia en particular.
Los rboles representan las estructuras no lineales y dinmicas de datos ms importantes
en computacin:
Dinmicas, puesto que la estructura rbol puede cambiar durante la ejecucin de
un programa.
No lineales, puesto que a cada elemento del rbol pueden seguirle varios
elementos. La siguiente figura es un ejemplo de la representacin grfica de un
rbol donde podemos ver claramente que a cada nodo del rbol le puede seguir otro

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

nodo, esto nos permite conocer que un rbol es no lineal. Un rbol es dinmico ya
que puede cambiar su estructura una vez que se est ejecutando el programa.

Representacin de un rbol
Tomada de computacion.cs.cinvestav.mx

Generalidades
En la ciencia de la computacin definimos un rbol como un conjunto de nodos y lneas. Un
nodo es un elemento de informacin que reside en el rbol. Una lnea es un par de nodos
ordenados <u,v>, y a la secuencia de lneas se le denomina ruta (path).
Adems, los rboles tienen las siguientes propiedades:
Tienen un nodo al que se le llama raz del rbol.
Todos los nodos, excepto la raz, tienen una sola lnea de entrada (el nodo raz no
tiene ninguna).
Existe una ruta nica del nodo raz, a todos los dems nodos del rbol.
Si hay una ruta <a,b>, entonces a b se le denomina hijo de a y es el nodo raz
de un subrbol.
Ahora, consulta a Joyanes (2010, pp. 495-505) para que revises la explicacin que ofrece
el autor acerca de la representacin de los rboles. Podrs encontrar definiciones,
imgenes, etc. La bibliografa te servir para complementar la informacin proporcionada
en el texto de Goodrich y Tamassia (2010), ya que el autor da su propia definicin del
concepto de rbol, sus propios casos y ejemplos de aplicaciones en el mundo real. Es
importante que consultes la diferente bibliografa sugerida y que puedas formar tu propio
concepto, ejemplos, casos e incluso aplicaciones propias, seguramente influenciado por tu
entorno. Asimismo, Joyanes (2010) muestra cmo se forman grficamente los rboles, qu
son los nodos, cmo se representan, cmo se acomodan, etc.
La siguiente ilustracin muestra cmo se representan grficamente los nodos en un rbol.

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

Representacin de los nodos de un rbol


Tomada de www.javaya.com.ar

La figura anterior fue recuperada del siguiente URL: www.javaya.com.ar. Este sitio muestra
de forma grfica y, a travs de ejemplos, el tema de los rboles mismo que el autor
Joyanes (2010) tambin explica en el libro ya citado. Tanto en el sitio web mencionado
como en dicho libro encontrars de forma didctica la explicacin para crear rboles a
travs de los nodos, cmo acomodar dichos nodos y cmo representarlos en una grfica.
Es menester que consultes ambas fuentes, tanto la del sitio web como la bibliogrfica, ya
que, a travs de la lectura que t mismo realices, formars tus propios conceptos y tu
visualizacin de forma grfica de un rbol a travs de nodos. Aprenders con diferentes
ejemplos a crear y utilizar los rboles.
Creacin de un rbol
Enseguida tienes una lista de 10 puntos necesarios para la creacin de un rbol, stas son
consideraciones para crear paso a paso el rbol y codificarlo.
1. Nodo indica un elemento, o tem, de informacin.
2. Todo rbol que no es vaco, tiene un nico nodo raz.
3. Un nodo X es descendiente directo de un nodo Y, si el nodo X es apuntado por el
nodo Y. X es hijo de Y.
4. Un nodo X es antecesor directo de un nodo Y, si el nodo X apunta al nodo Y. X es
padre de Y.
5. Se dice que todos los nodos que son descendientes directos (hijos) de un mismo
nodo (padre) son hermanos.

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

6. Todo nodo que no tiene ramificaciones (hijos), se conoce con el nombre de terminal u
hoja.
7. Todo nodo que no es raz, ni terminal u hoja se conoce con el nombre de interior.
8. Grado es el nmero de descendientes directos de un determinado nodo. Grado del
rbol es el mximo grado de todos los nodos del rbol.
9. Nivel es el nmero de arcos que deben ser recorridos para llegar a un determinado
nodo. Por definicin, la raz tiene nivel 1.
10. Altura del rbol es el mximo nmero de niveles de todos los nodos del rbol.
Ahora, consulta Goodrich y Tamassia (2010, pp. 233-250) para que profundices en los
algoritmos de creacin de un rbol. As podrs ampliar tu visin de cmo emplear los
puntos anteriores, incluso podrs consultar ejemplos. Los 10 puntos para la creacin de un
rbol puedes encontrarlos tambin en la bibliografa de Goodrich y Tamassia (2010);
adems encontrars ejemplos, imgenes y casos que te permitirn profundizar en el
empleo de dichos pasos.
La siguiente imagen nos ilustra la forma como se van insertando nodos en el rbol.

Niveles y nodos en un rbol


Tomada de www.javaya.com.ar

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

Aplicaciones
El concepto de rboles en programacin tiene aplicaciones muy especficas en el mundo
real. Si bien son cosas muy especficas de ciertas ciencias; por ejemplo, la genealoga
pudiera servir para conocer a los antepasados de una persona; pero tambin se puede
aplicar en otros escenarios, como en la cra de animales: con los perros con pedigr o con
los caballos de carrera, tambin sera aplicable a la propagacin de enfermedades. En
matemticas, por ejemplo, podra aplicarse en la teora de probabilidad al analizar
diferentes rutas de un suceso.
En el mbito del desarrollo de software, puede aplicarse en el anlisis de una interfaz
usuario, al analizar cmo navega el usuario en un ambiente que le proporciona diferentes
opciones de desplazamiento (por ejemplo, en una interfaz en un cajero automtico).
Puedes consultar bibliografa que te permita conocer otras aplicaciones de los rboles; para
ello, revisa Joyanes y Zahonero (2012, pp. 517-530) donde encontrars ms aplicaciones
de los rboles. En este texto puedes encontrar aplicaciones de los rboles, como lo son los
empleados en el campo de la medicina para estudiar el comportamiento de una
enfermedad en determinada poblacin o sector de sta, as como la erradicacin de la
enfermedad por medio de ciertos medicamentos. Se analizan las ramificaciones que se
generan, la cantidad de nodos y los recorridos a dichos nodos.

Plantilla de rbol genealgico


Tomada de www.genoom.com

La imagen anterior muestra una plantilla para crear rboles genealgicos, que como ya se
explic en puntos anteriores, es una de las aplicaciones ms prcticas del tema de los
rboles en nuestra vida cotidiana.

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

3.2. rboles binarios


Generalidades
Un rbol ordenado es aquel en el cual la distribucin de las ramas sigue una secuencia
lgica. Los rboles ordenados de grado dos son de especial inters, puesto que
representan una de las estructuras de datos ms importantes en computacin, conocida
como rboles binarios.
Consulta Joyanes (2010, pp. 506-520) donde encontrars de forma detallada la explicacin
de rboles binarios y las formas de representarlo y trabajarlo. En esta fuente tambin
podrs conocer algunas aplicaciones de este tipo de rboles, ejemplos que te ayudarn a
ampliar tu conocimiento. Consultar este libro te servir tambin para diferenciar entre
rboles y rboles binarios y cundo usar cada tipo de rbol segn sea el caso.
En un rbol binario, cada nodo puede tener como mximo dos subrboles; y siempre es
necesario distinguir entre el subrbol izquierdo y el subrbol derecho. Algunas aplicaciones
de rboles binarios las encontramos en rboles binarios de bsqueda, representacin de
una expresin algebraica, un rbol genealgico, etc.; dos rboles binarios son distintos
cuando sus estructuras son diferentes; dos rboles binarios son similares cuando sus
estructuras son idnticas, pero la informacin que contienen sus nodos difiere entre s.
Los rboles binarios equivalentes se definen como aquellos que son similares, sus nodos
contienen la misma informacin. Se define un rbol binario completo como un rbol en el
que todos sus nodos, excepto los de ltimo nivel, tienen dos hijos: el subrbol izquierdo y el
subrbol derecho.
Se puede calcular el nmero de nodos de un rbol binario completo de altura h, aplicando
la siguiente frmula: nmero de nodos ABC= 2h1, donde ABC significa rbol binario
completo, y h la altura del rbol.
Existen dos formas de representar un rbol binario en memoria: por medio de puntero y por
medio de arreglos. En la siguiente figura podemos apreciar una representacin de un rbol
binario y otro casi completo:

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

Estructuras de datos
Unidad 3. Almacenamiento

rbol binario y rbol binario casi completo


Tomada de computacion.cs.cinvestav.mx

Creacin de un rbol binario


Los nodos del rbol binario sern representados como registros que contendrn como
mnimo tres campos. En un campo se almacenar la informacin del nodo. Los dos
restantes se utilizarn para apuntar a los subrboles izquierdo y derecho respectivamente.

IZQ

INFO

DER

Tres campos de almacenamiento en un rbol binario

IZQ: campo donde se almacena la direccin del subrbol izquierdo del nodo T.
INFO: campo donde se almacena la informacin de inters del nodo.
DER: campo donde se almacena la direccin del subrbol derecho del nodo T.
La definicin de un rbol binario en lenguaje algortmico queda de la siguiente forma:
ENLACE= ^NODO
NODO= REGISTRO
IZQ: tipo ENLACE
INFO: tipo de dato
DER: tipo ENLACE
Fin

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

10

Estructuras de datos
Unidad 3. Almacenamiento

Consulta Goodrich y Tamassia (2010, pp. 251-260) para que analices el algoritmo de
creacin de rboles binarios, lo pongas en prctica y adems puedas establecer las
diferencias entre la creacin de rboles y la creacin de rboles binarios. En el libro
encontrars el mismo algoritmo para la creacin de un rbol binario y tambin ejemplos que
te permitirn poner en prctica este algoritmo.
Recorrido de un rbol binario
Una de las operaciones ms importantes a realizar en un rbol binario es el recorrido de los
mismos. Recorrer significa visitar los nodos del rbol en forma sistemtica, de tal manera
que todos los nodos del mismo sean visitados una sola vez. Existen tres formas diferentes
de efectuar el recorrido y todas ellas de naturaleza recursiva, stas son:
1.
a)
b)
c)

Recorrido en preorden:
Visitar la raz
Recorrer el subrbol izquierdo
Recorrer el subrbol derecho

Recorrido pre-orden
Tomada de sites.google.com

2.
a)
b)
c)

Recorrido en inorden:
Recorrer el subrbol izquierdo
Visitar la raz
Recorrer el subrbol derecho

Recorrido Enorden o In-orden


Tomada de sites.google.com

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

11

Estructuras de datos
Unidad 3. Almacenamiento

3.
a)
b)
c)

Recorrido en posorden:
Recorrer el subrbol izquierdo
Recorrer el subrbol derecho
Visitar la raz

Recorrido post-orden
Tomada de sites.google.com

El trmino visitar puede ser reemplazado por escribir la informacin el nodo.


Ahora, consulta Joyanes y Zahonero (2012, pp. 531-550) para que ahondes ms en los tres
tipos de recorridos en rboles. En esta fuente encontrars ejemplos como ecuaciones
algebraicas donde podrs aplicar los recorridos y as practicarlos. En lneas anteriores,
pudiste ver los pasos y las ilustraciones de los recorridos posibles para un rbol binario,
ahora revisars el algoritmo para cada recorrido.
En el recorrido preorden hay que visitar los nodos en el siguiente orden:
1. Raz
2. Subrbol izquierdo
3. Subrbol derecho
Algoritmo preorden
PREORDEN(NODO)
{El algoritmo realiza el recorrido preorden en un rbol binario. NODO es un dato de tipo
PUNTERO}
{INFO, IZQ y DER son campos del registro NODO. INFO es una o ms variables de
informacin del nodo, IZQ y DER son variables de tipo puntero}
Si NODO != NULL entonces
Visitar el NODO
{Escribir la informacin NODO^.INFO}
Regresa a PREORDEN con PREORDEN(NODO^.IZQ)
{Llamada recursiva con la rama izquierda}
Regresa a PREORDEN con PREORDEN(NODO^.DER)
{Llamada recursiva con la rama derecha}
Fin-si
Fin-algoritmo

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

12

Estructuras de datos
Unidad 3. Almacenamiento

En el recorrido inorden hay que visitar los nodos en el siguiente orden:


1. Subrbol izquierdo
2. Raz
3. Subrbol derecho
Algoritmo inorden
INORDEN(NODO)
{El algoritmo realiza el recorrido inorden en un rbol binario. NODO es un dato de tipo
PUNTERO}
{INFO, IZQ y DER son campos del registro NODO. INFO es una o ms variables de
informacin del nodo, IZQ y DER son variables de tipo puntero}
Si NODO != NULL entonces
INORDEN(NODO^.IZQ) {Llamada recursiva con la rama izquierda}
Visitar el NODO {Escribir la informacin NODO^.INFO}
INORDEN(NODO^.DER) {Llamada recursiva con la rama derecha}
Fin-si
Fin-algoritmo
En el recorrido posorden hay que visitar los nodos en el siguiente orden:
1. Subrbol izquierdo
2. Subrbol derecho
3. Raz
Algoritmo posorden (nodo)
{El algoritmo realiza el recorrido posorden en un rbol binario. NODO es un dato de tipo
PUNTERO}
{INFO, IZQ y DER son campos del registro NODO. INFO es una o ms variables de
informacin del nodo, IZQ y DER son variables de tipo puntero}
Si NODO = NULL entonces
POSTORDEN(NODO^.IZQ) {Llamada recursiva con la rama izquierda}
POSTORDEN(NODO^.DER) {Llamada recursiva con la rama derecha}
Visitar el NODO {Escribir la informacin NODO^.INFO}
Fin-si
Fin-algoritmo.
Tambin puedes consultar Goodrich y Tamassia (2010, pp. 261-269) y de esta manera
conocer ms ampliamente acerca de los recorridos preorden, inorden y posorden. As
podrs ampliar tus referencias acerca de los posibles recorridos a realizar con los rboles
binarios, asimismo podrs conocer en qu situaciones se podra aplicar cada recorrido.
Bsqueda de un rbol binario
El rbol binario de bsqueda es una estructura sobre la cual se pueden realizar
eficientemente las operaciones de bsqueda, insercin y eliminacin.

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

13

Estructuras de datos
Unidad 3. Almacenamiento

Por lo tanto, consulta Joyanes y Zahonero (2012, pp. 551-559) para que profundices en
torno a las bsquedas en un rbol binario. Es importante que conozcas de forma clara de
un rbol binario y cul es la diferencia contra un rbol convencional. Una vez que
identifiques cada tipo de rbol, podrs emplearlos de forma adecuada.
La bibliografa te ofrece diferentes ejemplos que puedes consultar para que practiques y
apliques la bsqueda en un rbol binario.
Algoritmo de Bsqueda
BSQUEDA (NODO, INFOR)
{El algoritmo localiza un nodo en un rbol binario de bsqueda. NODO es una variable de
tipo puntero que apunta a la raz del rbol. INFOR es una variable que contiene la
informacin que se desea localizar en el rbol. Cabe aclarar que la primera vez la variable
NODO no puede ser vaca.}
Si INFOR < NODO^.INFO entonces
Si NODO^.IZQ = NULL entonces
Escribir El nodo no se encuentra en el rbol
Sino
BSQUEDA (NODO^.IZQ, INFOR) {Llamada recursiva}
Fin Si
Sino
Si INFOR > NODO^.INFO entonces
Si NODO^.DER = NULL entonces
Escribir El nodo no se encuentra en el rbol
Sino
BSQUEDA (NODO^.DER, INFOR) {Llamada recursiva}
Fin Si
Sino
Escribir El nodo se encuentra en el rbol
Fin Si
Fin Si
Fin del algoritmo
Insercin de un rbol binario de bsqueda
Los pasos que deben realizarse para insertar un elemento a un rbol binario de bsqueda
son los siguientes:
1. Debe compararse la clave a insertar con la raz del rbol. Si es mayor, debe
avanzarse hacia el subrbol derecho. Si es menor, debe avanzarse hacia el
subrbol izquierdo.
2. Repetir sucesivamente el paso 1 hasta que se cumpla alguna de las siguientes
condiciones:

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

14

Estructuras de datos
Unidad 3. Almacenamiento

2.1 El subrbol derecho es igual a vaco, o el subrbol izquierdo es igual a vaco; en


cuyo caso se proceder a insertar el elemento en el lugar que le corresponde.
2.2 La clave que quiere insertarse es igual a la raz del rbol, en cuyo caso no se
realiza la insercin.
Consulta Joyanes (2010, pp. 521-535) para que profundices en el tema de insercin en un
rbol binario de bsqueda, de esta manera podrs conocer una de las operaciones
importantes a realizar con un rbol binario que es la insercin de datos, ya que sera la
primera operacin a realizar, luego hacer bsquedas y despus modificaciones a
determinados nodos, aplicar recorridos y finalmente hacer eliminaciones.
Borrado de un rbol binario de bsqueda
Consiste en eliminar un nodo del rbol sin violar los principios que definen justamente un
rbol binario de bsqueda. Se debe distinguir los siguientes casos:
1. Si el elemento a borrar es terminal u hoja, simplemente se suprime.
2. Si el elemento a borrar tiene un slo descendiente, entonces tiene que sustituirse
por ese descendiente.
3. Si el elemento a borrar tiene dos descendientes, entonces se tiene que sustituir por
el nodo que se encuentra ms a la izquierda en el subrbol derecho o por el nodo
que se encuentra ms a la derecha en el subrbol izquierdo.
Adems, debe recordarse que antes de eliminar un nodo, debe localizrsele en el rbol.
Consulta Goodrich y Tamassia (2010, pp. 270-274) para que identifiques el algoritmo de
insercin de un rbol binario de bsqueda.
Con este tema concluimos el tema de rboles binarios que, como puedes constatar, es un
tema bastante profundo y til en el campo de la programacin. De esta manera has
conocido los recorridos que se realizan a los rboles binarios, sus algoritmos, diagramas
que los ilustran grficamente y los cdigos aplicables a cada recorrido.

Cierre de la Unidad
En esta unidad se abordaron diferentes temas de gran inters en la programacin, estos
temas son los rboles y los rboles binarios. Con ayuda del material bibliogrfico de apoyo
pudiste conocer lo que es un rbol, su algoritmo, as como implementaciones reales.
Tambin revisaste los rboles binarios, cmo se usan, la forma de representarse, sus
algoritmos y sus variantes: algoritmo preorden, inorden y posorden. Tambin conociste los
rboles binarios de bsqueda, su algoritmo, forma de insertarles datos, as como la forma
de borrar de un rbol binario. Con estos temas y con esta unidad concluimos la asignatura
de Estructuras de datos.

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

15

Estructuras de datos
Unidad 3. Almacenamiento

De esta manera llegamos al trmino de esta unidad y adems de la asignatura Estructuras


de datos. A lo largo de las unidades desarrollamos diversos temas que son muy complejos,
pero a la vez sumamente tiles, en la programacin, es importante que adems de haber
revisado el contenido de tus unidades, hayas consultado las fuentes de internet y las
fuentes bibliogrficas, asimismo tengas el buen hbito de la lectura y del autoaprendizaje,
ya que en el rea de las TIC la evolucin en los temas es sumamente rpida y es necesario
que te ests actualizando; si bien, las estructuras de datos no son tan voltiles como otros
temas, la forma de aplicarlas en diversos lenguajes si va cambiando velozmente.
Enhorabuena, concluiste la asignatura Estructura de datos!

Para saber ms
Existen diversas fuentes que puedes consultar para ampliar tus conocimientos. Entre otras
fuentes, puedes consultar la siguiente liga:
http://delta.cs.cinvestav.mx/~adiaz/anadis/BinTree.pdf
En la siguiente fuente encontrars un documento de extensin .pdf, en donde podrs
revisar de una forma muy prctica definiciones, recorridos y algoritmos de rboles.
http://www.lcc.uma.es/~galvez/ftp/tad/tadtema4.pdf
Esta otra fuente detalla ms a profundidad los diferentes conceptos relacionados con los
rboles, asimismo explica de forma algebraica el algoritmo base para programar rboles.

Fuentes de consulta

Goodrich, M. y Tamassia, R. (2010). Estructura de datos y algoritmos en Java.


Mxico: CECSA.
Joyanes, L. (2010). Fundamentos de programacin. Algoritmos. Estructuras de
datos y objetos. Espaa: McGraw-Hill.
Joyanes, L. y Zahonero, I. (2012). Programacin en Java 2: algoritmos, estructuras
de datos y programacin orientada a objetos. Espaa: McGraw-Hill.

Ciencias Exactas, Ingeniera y Tecnologa | Desarrollo de Software

16