Está en la página 1de 47

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja

MODALIDAD ABIERTA Y A DISTANCIA

ESCUELA DE CIENCIAS DE LA COMPUTACIN


Gua didctica

ESTRUCTURA DE DATOS Y
ALGORITMOS II

3
CARRERA:
Ingeniera en Informtica
AUTOR:
Franco Olivio Guamn Bastidas

Reciba asesora virtual en: www.utpl.edu.ec


18301

ESTRUCTURA DE DATOS Y ALGORITMOS II


Gua didctica

Franco Olivio Guamn Bastidas


UNIVERSIDAD TCNICA PARTICULAR DE LOJA
CC Ecuador 3.0 By NC ND
Diagramacin, diseo e impresin:
EDITORIAL DE LA UNIVERSIDAD TCNICA PARTICULAR DE LOJA
Call Center: 593 - 7 - 2588730, Fax: 593 - 7 - 2585977
C. P.: 11- 01- 608
www.utpl.edu.ec
San Cayetano Alto s/n
Loja - Ecuador
Derecho de Autor No.- 021431
Cuarta edicin
Segunda reimpresin
ISBN-978-9942-00-729-2

Esta versin impresa, ha sido licenciada bajo las licencias Creative Commons Ecuador 3.0 de Reconocimiento -No comercial- Sin obras derivadas; la cual
permite copiar, distribuir y comunicar pblicamente la obra, mientras se reconozca la autora original, no se utilice con fines comerciales ni se realicen
obras derivadas. http://www.creativecommons.org/licences/by-nc-nd/3.0/ec/
Octubre, 2011

NDICE
TEM PGINA
INTRODUCCIN............................................................................................................................................ 5
OBJETIVOS GENERALES........................................................................................................................... 6
BIBLIOGRAFA................................................................................................................................................ 6
ORIENTACIONES GENERALES................................................................................................................ 7

PRIMER BIMESTRE
OBJETIVOS ESPECFICOS.......................................................................................................................... 9
CONTENIDOS................................................................................................................................................. 10
DESARROLLO DEL APRENDIZAJE......................................................................................................... 11
CAPTULO 1: RECURSIVIDAD............................................................................................................................... 11
CAPTULO 2: ARCHIVOS (FICHEROS)............................................................................................................... 16
CAPTULO 3: ESTRUCTURAS JERRQUICAS Y RBOL BINARIO DE BSQUEDA..................... 21

SEGUNDO BIMESTRE
OBJETIVOS ESPECFICOS.......................................................................................................................... 27
CONTENIDOS................................................................................................................................................. 28
DESARROLLO DEL APRENDIZAJE......................................................................................................... 29
CAPTULO 4: RBOLES BALANCEADOS......................................................................................................... 29
CAPTULO 5: RBOLES B....................................................................................................................................... 33
CAPTULO 6: GRAFOS.............................................................................................................................................. 37
SOLUCIONARIO............................................................................................................................................. 41
ANEXOS............................................................................................................................................................ 47

FF

EVALUACIONES A DISTANCIA

Gua didctica: Estructura de Datos y Algoritmos II

PRELIMINARES

Introduccin
El estudio de las Estructuras de Datos es sumamente importante, debido a la necesidad de manipular la
informacin de manera adecuada y oportuna. El objetivo principal es el de procurar que los algoritmos
aplicados funcionen en un adecuado tiempo de ejecucin.
Es por ello de la importancia de aprender acerca de las Estructuras de Datos, y de cmo manipular la
informacin a travs de ordenamientos, bsquedas, organizacin, mtodos de acceso, etc.
Esta gua est dedicada al estudio de las Estructuras de Datos y a dar una breve introduccin al anlisis
de la eficiencia de algoritmos. El estudio de las Estructuras de Datos se har desde algunos puntos de
vista, analizndolos primero desde el punto de vista terico pero sin perder de vista sus aplicaciones
prcticas.
En el primer bimestre nos centraremos en el estudio de las estructuras jerrquicas, o no lineales, esto es
en el estudio de los rboles, en sus diferentes presentaciones.
El segundo bimestre, estudiaremos el tratamiento de archivos y la implementacin de los temas
anteriormente estudiados con stos archivos para terminar con el estudio de grafos.
Esta gua ha sido elaborada tratando de que la informacin en ella contenida se encuentre de la
manera ms entendible y amigable para los estudiantes, por lo cual estoy seguro que con su ayuda y la
del libro base el estudiante superar fcilmente el reto planteado, buena suerte.
Referencias
http://www.conclase.net/c/edd/index.php?cap=007
http://www.monografias.com/trabajos10/esda/esda.shtml
http://dis.um.es/~ginesgm/temas/tema3-1/sld014.htm
http://www.monografias.com/trabajos16/grafos/grafos.shtml

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

PRELIMINARES

Objetivo general
Introducir al estudiante en la comprensin adecuada del manejo de las Estructuras de Datos y Algoritmos,
en esencia en lo que se refiere al almacenamiento y procesamiento de informacin.

Bibliografa
Texto Base
PROGRAMACIN EN C, Metodologa, algoritmos y estructura de datos, Luis Joyanes Aguilar / Ignacio
Zahonero Martnez, 2da Edicin. Mc Graw Hill, 2005. Espaa. ISBN 84-481-9844-1
Bibliografa Complementaria
AlGORITMOS y ESTRUCTURAS DE DATOS, Una perspectiva en C, Luis Joyanes Aguilar / Ignacio
Zahonero Martnez, 1ra Edicin. Mc Graw Hill, 2004. Espaa.
PROGRAMACIN EN C++, Algoritmos, estructuras de datos y objetos, L. Joyanes Aguilar, Editorial
Mc Graw-Hill, Madrid-Espaa, 2000.
ESTRUCTURA DE DATOS, Algoritmos, abstraccin y objetos. Luis Joyanes Aguilar e Ignacio Zahonero
Martnez, Editorial McGraw-Hill, Espaa, 1999.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

PRELIMINARES

Orientaciones generales
Usted debe tomar en cuenta las siguientes consideraciones, las que estn dirigidas a ayudarle a lograr
un completo aprovechamiento en el desarrollo de la presente materia.

Organice adecuadamente su tiempo, de manera que pueda cumplir con los objetivos
planteados en la presente gua.

Lea detenidamente el texto base, tratando de comprender y entender los temas que se
abordan.

Es conveniente que usted realice las tareas de acuerdo a las fechas indicadas, esto
garantiza la asimilacin progresiva del conocimiento, ya que la complejidad de las tareas
ser gradual.

Conteste las cuestiones de repaso que se encuentran al final de cada captulo y compare
sus respuestas con las presentadas al final de la gua.

Realice los ejercicios propuestos tambin al final de cada captulo y comparta sus opiniones
y aportes en los foros programados para cada captulo.

Es importante que cualquier duda que el alumno tenga se lo haga saber al profesor va
telefnica o por correo electrnico.

Antes de empezar, algunas referencias importantes hacia el libro base, Internet,.


documentos relacionados o sugerencias personales, sern mostradas dentro de un
recuadro que lo diferencie del resto del texto.

Apoyo tecnolgico e Interactividad


Para usted ya es familiar, que cuenta con el apoyo tecnolgico de una plataforma o entorno virtual
de aprendizaje (EVA) www.utpl.edu.ec, este entorno, accesible nicamente para los estudiantes
de la UTPL, le permite interactuar con docentes y compaeros. Consulte con frecuencia el espacio
ANUNCIOS donde encontrar informacin y orientaciones sobre el desarrollo de esta asignatura.
Desde este semestre se empieza a calificar su participacin a travs del Campus Virtual, interacte a
travs de los foros.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER
BIMESTRE
PRELIMINARES

Plan de desarrollo de contenidos


La materia consta de dos bimestres, los contenidos en funcin del texto base son:
PRIMER BIMESTRE
Captulos de Texto Base

Pginas

Horas

Captulo 8. Recursividad

290 - 313 10

Captulo 15. Entradas y salidas por archivos

500 - 528 5

Captulo 16. Organizacin de datos en archivos

532 - 564 15

Captulo 20. rboles

656 - 696 10
40

SEGUNDO BIMESTRE
Anexo 1. rboles equilibrados de bsqueda

15

Anexo 2. rboles B

15

Anexo 3. Grafos

10
40

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

PRIMER BIMESTRE

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE
Objetivos especcos
Los objetivos especficos de la materia, en funcin de los captulos que se van a desarrollar son:
1.

Estudio de las estructuras de datos ms utilizadas.

2.

Construir algoritmos de ordenamiento utilizando estructuras.

3.

Determinar la mejor estructura para obtener una ptima solucin.

4.

Determinacin del mejor algoritmo de bsqueda, en relacin a la cantidad de datos.

5.

Realizar el tratamiento de archivos en C y C++

6.

Procesar archivos de organizacin secuencial y de acceso directo.

7.

Trabajar con algoritmos de ordenacin en memoria y ordenacin externa

No olvide que debe acceder al campus virtual para interactuar con el tutor y sus
compaeros, adems de que podr descargar informacin de la materia.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Contenidos
CAPTUlO 1: RECURSIVIDAD
DATOS GENERALES
PROPSITO
CONCEPTOS CLAVE
ESQUEMA DE ESTUDIO
CUESTIONES DE REPASO CAPTULO
INTERACTIVIDAD A TRAVS DE LOS FOROS DE CAMPUS VIRTUAL
DOCUMENTACIN ADICIONAL
CAPTUlO 2: ARCHIVOS (FICHEROS)
DATOS GENERALES
PROPSITO
CONCEPTOS CLAVE
ESQUEMA DE ESTUDIO
CUESTIONES DE REPASO CAPTULO 2
INTERACTIVIDAD A TRAVS DE LOS FOROS DE CAMPUS VIRTUAL
DOCUMENTACIN ADICIONAL
CAPTUlO 3: ESTRUCTURAS JERRQUICAS y RBOl BINARIO DE BSQUEDA
DATOS GENERALES
PROPSITO
CONCEPTOS CLAVE
ESQUEMA DE ESTUDIO
CUESTIONES DE REPASO CAPTULO 3
INTERACTIVIDAD A TRAVS DE LOS FOROS DE CAMPUS VIRTUAL
DOCUMENTACIN ADICIONAL

10

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Desarrollo del aprendizaje


Captulo 1:

Recursividad

Datos Generales:
Texto base

PROGRAMACION EN C, Metodologa, algoritmos y estructura de datos, Luis Joyanes


Aguilar / Ignacio Zahonero Martnez.

Captulo

8. Recursividad

Pginas

290 313

Horas de estudio empleadas

10 horas

Propsito
El propsito de este captulo es introducir en el conocimiento de las funciones
recursivas, diferencias, ventajas y desventajas frente a las funciones iterativas, entender
los pasos que siguen los lenguajes de programacin al llamar a subprogramas, hacer
el seguimiento de una funcin que realiza llamadas recursivas, conocer tcnicas
algortmicas aplicando recursividad, comparar la resolucin de un mismo problema
por iteracin y por recursin.
Conceptos Clave
Recursividad
Propiedad que posee una funcin por la cual dicha funcin puede llamarse a s
misma
Parte recursiva
Es aquella sentencia encargada de realizar la llamada al proceso recursivo.
Componente Base
Tambin conocida como condicin de terminacin, es una parte imprescindible de
una funcin recursiva, ya que sin ella nunca se terminaran de realizar las autollamadas,
y se terminara por agotar la memoria de nuestro computador.
Recursin Directa
Cuando una funcin realiza un nmero determinado de llamadas a si misma hasta
encontrar la condicin de terminacin de la recursin.
Recursin Indirecta
Cuando una funcin hace un llamado a otra, la que en un momento determinado har
un nuevo llamado a la funcin que la llamo en un principio.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

11

12

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Se explica el trabajo y diferencia


entre estos dos mtodos, as
como las directrices que nos
servirn para escoger el mtodo
a utilizar segn el programa a
realizar.

8.3. Recursin
versus
iteracin

Plantee algunos problemas y


evale que tipo de mtodo
de programacin sera el ms
ptimo para su resolucin.

Se estudia los tipos de Elabore un programa con cada


recursividad existentes, as como tipo de recursin.
las partes que la conforman.

Realice una corrida manual


de los programas presentados
en este apartado (en sus dos
modalidades), para entender
las diferencias existentes en su
funcionamiento.

Proponga algn programa en el


cual nos resulta ms ventajoso
utilizar
recursividad
que
iteracin.

8.2. Funciones
recursivas

En este apartado se describe


brevemente lo que significa
la recursin, sus ventajas y
desventajas frente a la iteracin

Actividades recomendadas

Se ampla la descripcin de la
recursividad, as tambin, se trata
algunos programas bsicos en los
cuales se trabaja utilizando la
recursividad

Introduccin

Descripcin del contenido a


revisar

8.1. Naturaleza de
la recursividad

8.

Tema a revisar
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?

Anotaciones

A continuacin se detallan los temas que se deben desarrollar, una descripcin general del mismo, y un conjunto de actividades que se
recomienda sean desarrolladas para una mejor asimilacin de los conceptos. Se han dispuesto las tres columnas de la derecha para llevar
un control personal del tiempo de dedicacin a cada tema, marcar las actividades que cada estudiante estima que necesita tutora y realizar
anotaciones personales.

Esquema de estudio
Gua didctica: Estructura de Datos y Algoritmos II
PRIMER BIMESTRE

Explica la facilidad de resolucin Revise


los
problemas
de un problema al dividirlo en planteados en este apartado,
problemas ms pequeos
y de ser posible realice una
corrida manual de ellos para su
mejor entendimiento.

8.5. Algoritmos
Divide y
Vencers

Actividades recomendadas

Explica el problema de prescindir Realice el problema propuesto


del componente base en una en este apartado.
funcin recursiva. Y se mencionan
las partes fundamentales para su
funcionamiento.

Descripcin del contenido a


revisar

8.4. Recursin
infinita

Tema a revisar
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?
Anotaciones

PRIMER BIMESTRE

Gua didctica: Estructura de Datos y Algoritmos II

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

13

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Cuestiones de repaso captulo 1


Como medidor de asimilacin de los contenidos, desarrollaremos las siguientes
cuestiones de repaso; le recomendamos que responda las preguntas de auto evaluacin
y para su informacin registre el nivel de desempeo que observo, esto le permitir
saber los temas que debe volver a revisar si su desempeo lo considera medio, y en
caso de observar un desempeo malo recuerde que puede solicitar tutora mediante el
campus virtual o telefnicamente.
N

Cuestin

Despus de
responder, el
desempeo ha sido:
Malo

1.

Indique las principales diferencias entre una funcin iterativa y


una funcin recursiva

2.

Cules son las principales ventajas de utilizar la recursividad?

3.

Cules son las principales desventajas de utilizar la


recursividad?

4.

Explique cada uno de los siguientes trminos

4.1.

Test para detener o continuar la recursin

4.2.

Componente base

4.3.

Sentencia recursiva

5.

Indique las principales diferencias entre la recursividad directa y


la recursividad indirecta.

6.

Explique las principales directrices que se deben considerar para


aplicar una funcin recursiva o una funcin iterativa.

7.

Cules seran las consecuencias de prescindir del componente


base en una funcin recursiva.?

Medio

Muy bien

Interactividad a travs de los Foros de Campus Virtual


Ingrese peridicamente al campus virtual que se encuentra en la siguiente direccin:
http://www.utpl.edu.ec y de respuesta a las siguiente preguntas que se han previsto
como parte del foro, su aporte es importante.

Comente acerca de la tcnica de resolucin de problemas Divide y vencers y


su implementacin mediante funciones recursivas.

Consulte en Internet temas relacionados a la recursividad y comprtalos a travs


del foro.

Ejercicios
Para reforzar el nivel de conocimientos del presente captulo se deben realizar las
siguientes actividades.

14

Ejercicios 8.1, 8.2, 8.3, 8.5, 8.7, 8.8, 8.9 y 8.16 (pags. 311 a 312 del texto base)

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Documentacin adicional
Para ampliar la informacin del texto base se dispone de bibliografa adicional, que
estar disponible en digital, a estos ltimos recursos podr acceder a travs del campus
virtual.
Descripcin del documento

Archivo disponible en el
EVA

En este documento obtenido desde Internet,


se abordan los siguientes temas:
- Conceptos de recursividad.
- Diseo de algoritmos recursivos
- Ejecucin de un mdulo recursivo

Recursividad.pdf

- Traza de algoritmos recursivos


- Ejemplos de funciones recursivas.
- Ejemplos ms complejos
- Recursividad o iteracin?

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

15

Gua didctica: Estructura de Datos y Algoritmos II

Captulo 2:

PRIMER BIMESTRE

Archivos (Ficheros)

Datos Generales:
Texto base

PROGRAMACION EN C, Metodologa, algoritmos y estructura de datos, Luis Joyanes


Aguilar / Ignacio Zahonero Martnez.

Captulo

15. Entradas y salidas por archivos


16. Organizacin de datos en un archivo

Pginas

499 565

Horas de estudio empleadas

20 horas

Propsito
Estos captulos tienen como propsito introducir al estudiante en el conocimiento del
tratamiento de archivos en C, procesar archivos de organizacin secuencial, procesar
archivos de acceso directo, distinguir entre ordenacin en memoria y ordenacin
externa, conocer los diferentes tipos de algoritmos de ordenacin.
Conceptos Clave
Registro
Se puede considerar a un registro como un tipo o coleccin de datos de tamao fijo.
Los campos de los registros pueden ser de diferentes tipos de datos.
Flujo
Conoceremos como flujo a la corriente de datos que fluyen entre un origen o fuente
(productor) y un destino o sumidero (consumidor).
Acceso secuencial
Se refiere al acceso a un archivo segn el orden de almacenamiento de sus registros,
uno tras otro.
Acceso directo
Se refiere al acceso a un registro determinado, sin que ello implique la consulta de los
registros precedentes.

16

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Se describe los diferentes


parmetros utilizados para
poder trabajar con archivos,
ya sea para lectura o escritura
desde un programa.

Aqu podremos estudiar las


diferentes funciones uilizadas
para escribir o para recuperar
datos desde los archivos en
cuestin.

15.3 Apertura de un
archivo

15.4 Funciones de
entrada/salida
para archivos

Estudie los diferentes programas


utilizados en este apartado
para lograr una correcta
comprensin del tema.

Estudie los diferentes programas


utilizados en este apartado
para lograr una correcta
comprensin del tema.

Breve explicacin de la manera Lea el apartado en mencin,


de accesar a un archivo ya que es importante para la
almacenado e memoria.
comprensin de los siguientes
puntos.

15.2 Puntero FILE

Lea el apartado en mencin,


ya que es importante para la
comprensin de los siguientes
puntos.

Actividades recomendadas

Se explica el flujo de datos


entre una fuente y un destino
a travs de un canal y los
procedimientos que se ejecutan
durante este flujo.

Descripcin del contenido a


revisar

15.1 Flujos

Tema a revisar
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?

Anotaciones

A continuacin se detallan los temas que se deben desarrollar, una descripcin general del mismo, y un conjunto de actividades que se
recomienda sean desarrolladas para una mejor asimilacin de los conceptos. Se han dispuesto las tres columnas de la derecha para llevar
un control personal del tiempo de dedicacin a cada tema, marcar las actividades que cada estudiante estima que necesita tutora y realizar
anotaciones personales.

Esquema de estudio
PRIMER BIMESTRE

Gua didctica: Estructura de Datos y Algoritmos II

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

17

18

Explicacin del mtodo de Lea y estudie el programa


almacenamiento Hash, con sus utilizado en este apartado.
ventajas y dificultades

Explicacin del mtodo

Nos presenta informacin muy


necesaria de conocer previa
al estudio de los diferentes
mtodos
de
ordenacin
externa.

Explicacin y codificacin del Lea el apartado, realice la


algoritmo.
codificacin indicada y realice
una corrida manual del
programa.

16.3 Archivos con


direccionamiento
Hash

16.4 Archivos
secuenciales
indexados

16.5 Ordenacin
de archivos:
Ordenacin
externa:

16.6 Clasificacin por


mezcla directa
(mezcla simple)

Lea el apartado en mencin,


ya que es importante para la
comprensin de los siguientes
puntos.

Lea y estudie el programa


utilizado en este apartado.

los tipos de Revise los programas utilizados


de
archivos e el apartado, revselos para que
entienda su funcionamiento.

Se estudia
organizacin
existentes

16.2 Organizacin de
archivos

Actividades recomendadas

Explicacin del trmino y Lea el apartado en mencin,


las diferentes partes que lo ya que es importante para la
componen
comprensin de los siguientes
puntos.

Descripcin del contenido a


revisar

16.1 Registros

Tema a revisar
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?
Anotaciones

Gua didctica: Estructura de Datos y Algoritmos II


PRIMER BIMESTRE

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Cuestiones de repaso captulo 2


Como medidor de asimilacin de los contenidos, desarrollaremos las siguientes
cuestiones de repaso; le recomendamos que responda las preguntas de auto evaluacin
y para su informacin registre el nivel de desempeo que observo, esto le permitir
saber los temas que debe volver a revisar si su desempeo lo considera medio, y en
caso de observar un desempeo malo recuerde que puede solicitar tutora mediante el
campus virtual o telefnicamente.

Despus de responder,
el desempeo ha sido:

Cuestin

Malo

1.

De una definicin de Archivo o fichero

2.

Los archivos, segn la organizacin de sus registros, se pueden


considerar de dos tipos de accesos. Cules son? Y qu significan
cada uno de ellos?

3.

Cules son los tipos de organizacin de registros fundamentales


que se consideran?

4.

Cules son las caractersticas que proporciona al trabajo con


archivos el parmetro r+?

5.

Cules son las caractersticas que proporciona al trabajo con


archivos el parmetro a+b?

6.

Cules son las diferencias de trabajar con archivos de texto y


binarios?

7.

Explique brevemente como es el modo de trabajo del algoritmo


de ordenacin por mezcla directa.

8.

Explique brevemente de que se trata el direccionamiento Hash

Medio

Muy bien

Interactividad a travs de los Foros de Campus Virtual


Ingrese peridicamente al campus virtual que se encuentra en la siguiente direccin:
http://www.utpl.edu.ec y de respuesta a las siguiente preguntas que se han previsto
como parte del foro, su aporte es importante.

Comente acerca de los diferentes tipos de organizacin de archivos, cual a su


parecer le parece ser el ms ptimo y por que?.

Consulte en Internet temas relacionados y comprtalos a travs del foro.

Ejercicios
Para reforzar el nivel de conocimientos del presente captulo se deben realizar las
siguientes actividades.

Ejercicios 15.7, 15.8

(pag. 527 del texto base)

Ejercicios 16.2 (pag. 564 del texto base)

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

19

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Documentacin adicional
Para ampliar la informacin del texto base se dispone de bibliografa adicional, que
estar disponible en digital, a estos ltimos recursos podr acceder a travs del campus
virtual.
Descripcin del documento

Archivo disponible en el
EVA

En este documento obtenido desde Internet, se


abordan los siguientes temas:
-

Archivos en C++, flujos de


entrada/salida.

Lectura-escritura en ficheros de texto:


con << y >>.

Ficheros binarios.

transpaficheros.pdf

En este documento obtenido desde Internet,


se abordan los siguientes temas:
-

20

Ficheros en C++

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

ficheros.pdf

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Captulo 3:

Estructuras Jerrquicas y rbol Binario de Bsqueda

Datos Generales:
Texto base

PROGRAMACION EN C, Metodologa, algoritmos y estructura de datos, Luis Joyanes


Aguilar / Ignacio Zahonero Martnez

Captulo

20. rboles

Pginas

656 - 696

Horas de estudio empleadas

10 horas

Propsito
A travs de este captulo, usted aprender a estructurar datos en orden jerrquico,
distinguir los tipos de rboles binarios, recorrer rboles en tres formas diferentes,
representar rboles utilizando estructuras enlazadas, evaluar expresiones algebraicas,
definir y construir un rbol binario de bsqueda.
Conceptos Clave
Jerarqua
Se utiliza esta terminologa ya que los rboles estn formados de tal manera que
partiendo desde un nodo inicial, se va descendiendo por varios subniveles, los que le
crea algunos rangos de jerarqua.
Raz
Ser conocido con este nombre el primer nodo que dar inicio a la formacin de un
nuevo rbol.
Hoja
Con este nombre se conocern a aquellos nodos que no tengan ms descendencia.
Recorrido
Sern las maneras de cmo vamos a presentar los datos almacenados en los rboles.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

21

22

Se especifican las caractersticas Analice los ejemplos planteados


propias de los rboles binarios, as en este apartado.
como algunos trminos que sern
propios de este tipo de rboles.

Se
muestra
como
estar Revise los programas ah
estructurados
los
diferentes indicados y luego codifquelos
elementos que formarn los en lenguaje C.
rboles binarios. As mismo su
representacin en lenguaje C.

20.2 rboles
binarios.

20.3 Estructura
de un rbol
binario

Realice
algunos
grficos
representando este tipo de
rboles e identifique cada uno
de los trminos en ellos.

Se hace una relacin de lo que


son los rboles y como se los
representa en la vida diaria, as
mismo se explica la terminologa
que se utilizar en adelante en el
tratamiento de rboles.

20.1. rboles
generales

Actividades recomendadas

En este apartado se describe Analice esta lectura y piense


brevemente
las
diferentes en algunos otros usos que se
utilizaciones de los rboles en la le pudiera dar, aparte de los ya
computacin.
nombrados.

Descripcin del contenido a


revisar

Cap 20.
Introduccin

Tema a revisar
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?

Anotaciones

A continuacin se detallan los temas que se deben desarrollar, una descripcin general del mismo, y un conjunto de actividades que se
recomienda sean desarrolladas para una mejor asimilacin de los conceptos. Se han dispuesto las tres columnas de la derecha para llevar
un control personal del tiempo de dedicacin a cada tema, marcar las actividades que cada estudiante estima que necesita tutora y realizar
anotaciones personales.

Esquema de estudio
Gua didctica: Estructura de Datos y Algoritmos II
PRIMER BIMESTRE

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Analizamos uno de los usos de los Realice los ejemplos ah


rboles binarios, como es el de planteados, luego codifique
resolucin de ecuaciones.
el programa que resuelva una
ecuacin.

Analizamos
las
diferentes Realice los programas que
formas de presentar los datos hagan los diferentes tipos de
almacenados en un rbol.
recorrido.

Nos muestra las caractersticas de Analice


las
caractersticas
este tipo de rboles.
especiales de este tipo de
rbol.

En este captulo se estudian todas Desarrolle un programa que


las operaciones que podemos permita realizar todas las
realizar con ABB.
operaciones en ABB, (creacin,
insercin
de
elementos,
eliminacin de elemento dado,
los diferentes recorridos y por
ltimo la eliminacin del rbol
completo)

20.5 rboles de
expresin.

20.6 Recorrido
de un rbol

20.7 rbol
binario de
bsqueda.

20.8 Operaciones
en rboles
Binarios de
Bsqueda

Actividades recomendadas

Nos muestra las operaciones que Lea el apartado en mencin,


podemos realizar con rboles ya que es importante para la
binarios.
comprensin de los siguientes
puntos.

Descripcin del contenido a


revisar

20.4 Operaciones
en rboles
binarios.

Tema a revisar
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?
Anotaciones

PRIMER BIMESTRE

Gua didctica: Estructura de Datos y Algoritmos II

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

23

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Cuestiones de repaso captulo 3


Como medidor de asimilacin de los contenidos, desarrollaremos las siguientes
cuestiones de repaso; le recomendamos que responda las preguntas de auto evaluacin
y para su informacin registre el nivel de desempeo que observo, esto le permitir
saber los temas que debe volver a revisar si su desempeo lo considera medio, y en
caso de observar un desempeo malo recuerde que puede solicitar tutora mediante el
campus virtual o telefnicamente.

Cuestin

Despus de responder,
el desempeo ha sido:
Malo

1.

Cules son los elementos que conforman un rbol?

2.

Cul es la diferencia existente entre el nivel de un nodo y su


altura o profundidad?

3.

Qu entiende usted por subrbol?

4.

Cules son las caractersticas principales de los rboles


binarios?

5.

Qu entiende usted por balance o equilibrio?

6.

Cules son los elementos que conforman un nodo para un


rbol binario?

7.

Cul es la diferencia entre recorrer un rbol en anchura y en


profundidad?

8.

Cules son los tipos de recorrido en profundidad?

9.

Cul es la caracterstica principal de los rboles binarios de


bsqueda?

10.

Cules son las principales operaciones que podemos realizar


con un ABB?

11.

Cuando deseamos eliminar un nodo de un ABB, cul ser


el nodo que tomar su lugar para que siga manteniendo las
caractersticas de ABB?

Medio

Muy bien

Interactividad a travs de los Foros de Campus Virtual


Ingrese peridicamente al campus virtual que se encuentra en la siguiente direccin:
http://www.utpl.edu.ec y de respuesta a las siguiente preguntas que se han previsto
como parte del foro, su aporte es importante.

24

Comente acerca de los temas estudiados en este captulo. Cuales son las ventajas
que nos presta la utilizacin de ABB?

Consulte en Internet temas relacionados y comprtalos a travs del foro.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

PRIMER BIMESTRE

Ejercicios
Para reforzar el nivel de conocimientos del presente captulo se deben realizar las
siguientes actividades.

Ejercicios 20.2, 20.3, 20.4, 20.5, 20.11, 20.15 (pag. 695, 696)

Documentacin adicional
Para ampliar la informacin del texto base se dispone de bibliografa adicional, que
estar disponible en digital, a estos ltimos recursos podr acceder a travs del campus
virtual.
Descripcin del documento

Archivo disponible en el
EVA

En este documento obtenido desde Internet,


se abordan los siguientes temas:
- rboles Binarios de Bsqueda en C++
- Teora

Abb en c++.pdf

- Prctica

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

25

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

SEGUNDO BIMESTRE
Objetivos especcos
Los objetivos especficos de la materia, en funcin de los captulos que se van a desarrollar son:
1.

Conocer la eficiencia de un rbol de bsqueda

2.

Construir un rbol de bsqueda equilibrado.

3.

Describir los diversos tipos de movimientos que se hacen cuando se desequilibra un


rbol

4.

Conocer las caractersticas de los rboles B.

5.

Conocer la estrategia que sigue el proceso de insercin de una clave en un rbol B.

6.

Conocer los pasos fundamentales de la operacin de eliminar una clave en un rbol B.

7.

Definir un grafo e identificar sus compoetes.

8.

Conocer las operaciones bsicas que se aplican sobre grafos

No olvide que debe acceder al campus virtual para interactuar con el tutor y sus
compaeros, adems de que podr descargar informacin de la materia.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

27

Gua didctica: Estructura de Datos y Algoritmos II

Contenidos
CAPTUlO 4: RBOlES BAlANCEADOS
DATOS GENERALES
PROPSITO
CONCEPTOS CLAVE
ESQUEMA DE ESTUDIO
CUESTIONES DE REPASO CAPTULO 4
INTERACTIVIDAD A TRAVS DE LOS FOROS DE CAMPUS VIRTUAL
DOCUMENTACIN ADICIONAL
CAPTUlO 5: RBOlES B
DATOS GENERALES
PROPSITO
CONCEPTOS CLAVE
ESQUEMA DE ESTUDIO
CUESTIONES DE REPASO CAPTULO 5
INTERACTIVIDAD A TRAVS DE LOS FOROS DE CAMPUS VIRTUAL
DOCUMENTACIN ADICIONAL
CAPTUlO 6: GRAFOS
DATOS GENERALES
PROPSITO
CONCEPTOS CLAVE
ESQUEMA DE ESTUDIO
CUESTIONES DE REPASO CAPTULO
INTERACTIVIDAD A TRAVS DE LOS FOROS DE CAMPUS VIRTUAL
DOCUMENTACIN ADICIONAL

28

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

Desarrollo del aprendizaje


Captulo 4

rboles balanceados

Datos Generales:
Texto base

Anexo 1.

Captulo

rboles equilibrados de bsqueda

Pginas

Horas de estudio empleadas

15 horas

Propsito
Durante el estudio de este captulo, conoceremos acerca de la eficiencia de los rboles
de bsqueda, construir un rbol de bsqueda equilibrado, describir los tipos de
movimientos que se realizan para equilibrar un rbol, realizar operaciones de insercin
y eliminacin de elementos del rbol.
Conceptos Clave
Equilibrio
En este caso, el equilibrio ser el grado de igualdad que existan entre los subrboles
izquierdo y derecho de un rbol.
Factor de equilibrio
Ser conocido con este nombre a un nuevo campo en el nodo, el cual nos indicar que
tan equilibrado est ese nodo con respecto a los dems.
Rotaciones
Sern los movimientos que debern realizarse para equilibrar el rbol luego de que se
ingrese o se elimine un nodo del rbol AVL.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

29

30

Anexo1

Tema a
revisar

Ya que el captulo correspondiente


al tema de estudio no lo podemos
encontrar en el libro base, he
desarrollado
la
informacin
necesaria como anexo, el cual
cuenta con todos los temas que
nos iteresa conocer para poder
utilizar rboles balanceados.

Descripcin del contenido a


revisar
Se recomienda realizar corridas
manuales de los programas que se
encuentran en el presente anexo,
esto le permitir al estudiante,
tener una visin clara de la lgica
que se utiliza para resolver los
diferentes casos que se presenten
con la insercin y eliminacin de
claves en rboles AVL.

Actividades recomendadas
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?

Anotaciones

A continuacin se detallan los temas que se deben desarrollar, una descripcin general del mismo, y un conjunto de actividades que se
recomienda sean desarrolladas para una mejor asimilacin de los conceptos. Se han dispuesto las tres columnas de la derecha para llevar
un control personal del tiempo de dedicacin a cada tema, marcar las actividades que cada estudiante estima que necesita tutora y realizar
anotaciones personales.

Esquema de estudio
Gua didctica: Estructura de Datos y Algoritmos II

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

Cuestiones de repaso captulo 4


Como medidor de asimilacin de los contenidos, desarrollaremos las siguientes
cuestiones de repaso; le recomendamos que responda las preguntas de auto evaluacin
y para su informacin registre el nivel de desempeo que observo, esto le permitir
saber los temas que debe volver a revisar si su desempeo lo considera medio, y en
caso de observar un desempeo malo recuerde que puede solicitar tutora mediante el
campus virtual o telefnicamente.

Cuestin

Despus de responder,
el desempeo ha sido:
Malo

1.

Cul es la caracterstica particular de los rboles AVL?

2.

El factor de equilibrio de un nodo, entre qu valores debe


oscilar para se siga considerndose al rbol al cual pertenece
como AVL?

3.

Cul es la lgica que se utiliza para insertar elementos en un


rbol AVL?

4.

En qu casos deberamos utilizar una rotacin simple?

5.

En qu casos deberamos utilizar una rotacin doble?

6.

En la eliminacin de elementos, ser suficiente con realizar


una vez alguna de las rotaciones existentes para volver a
obtener la condicin de rbol equilibrado? Por qu?

Medio

Muy bien

Interactividad a travs de los Foros de Campus Virtual


Ingrese peridicamente al campus virtual que se encuentra en la siguiente direccin:
http://www.utpl.edu.ec y de respuesta a las siguiente preguntas que se han previsto
como parte del foro, su aporte es importante.

Los rboles AVL frente a los ABB, que ventajas nos prestan, cuales son las
desventajas que podemos encontrar.

Consulte en Internet temas relacionados rboles AVL y comprtalos a travs del


foro.

Ejercicios
Para reforzar el nivel de conocimientos del presente captulo se deben realizar las
siguientes actividades.

Dibujar las diferentes fases por las que pasa el rbol AVL durante la insercin de
las siguientes claves: 14, 6, 24, 35, 59, 17, 21, 32, 4, 7, 15 y 22.

Dada la secuencia de claves enteras: 100, 29, 71, 82, 48, 39, 101, 22, 46, 1, 3, 20,
25 y 10. Dibujar el rbol AVL correspondiente. Eliminar claves consecutivamente
hasta encontrar un nodo en el que se viole la condicin de equilibrio cuya
restauracin sea con una rotacin doble.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

31

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

En el rbol construido en el primer ejercicio, eliminar el nodo raz. Hacerlo tatas


veces como sea necesario hasta que se desequilibre un nodo y haya que aplicar
una rotacin simple.

Documentacin adicional
Para ampliar la informacin del texto base se dispone de bibliografa adicional, que
estar disponible en digital, a estos ltimos recursos podr acceder a travs del campus
virtual.
Descripcin del documento

Archivo disponible en el
EVA

En este documento obtenido desde Internet,


se abordan los siguientes temas:
- rboles AVL

Descripcin del documento

Avl

Archivo disponible como


ANEXO 1

Documentacin del captulo

Anexo 1

32

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

Captulo 5

rboles B

Datos Generales:
Texto base

Anexo 2.

Captulo

rboles B

Pginas

Horas de estudio empleadas

15 horas

Propsito
El objetivo de este captulo es de conocer las caractersticas de los rboles B, utilizar
su estructura para organizar bsquedas eficientes en bases de datos, implementar
algoritmos de bsqueda de una clave, conocer las estrategias que se siguen para la
insercin y eliminacin de elementos.
Conceptos Clave
orden
Es el mximo nmero de enlaces que puede tener un nodo, ya que en los rboles B ya
no se trata con nodos que tienen solamente 2 enlaces.
Pgina
Es la denominacin que se les da a cada uno de los nodos que conforman un rbol B.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

33

34

Anexo 2

Tema a
revisar

Ya que el captulo correspondiente


al tema de estudio no lo podemos
encontrar en el libro base, he
desarrollado la informacin
necesaria como anexo, el cual
cuenta con todos los temas que
nos interesa conocer para poder
utilizar rboles B.

Descripcin del contenido a


revisar
Se recomienda realizar ejercicios
para insertar y eliminar elementos
de rboles B esto le permitir al
estudiante, tener una visin clara de
la lgica que se utiliza para resolver
los diferentes casos que se presenten
con la insercin y eliminacin de
claves.

Actividades recomendadas
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?

Anotaciones

A continuacin se detallan los temas que se deben desarrollar, una descripcin general del mismo, y un conjunto de actividades que se
recomienda sean desarrolladas para una mejor asimilacin de los conceptos. Se han dispuesto las tres columnas de la derecha para llevar
un control personal del tiempo de dedicacin a cada tema, marcar las actividades que cada estudiante estima que necesita tutora y realizar
anotaciones personales.

Esquema de estudio
Gua didctica: Estructura de Datos y Algoritmos II

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

Cuestiones de repaso captulo 5


Como medidor de asimilacin de los contenidos, desarrollaremos las siguientes
cuestiones de repaso; le recomendamos que responda las preguntas de auto evaluacin
y para su informacin registre el nivel de desempeo que observo, esto le permitir
saber los temas que debe volver a revisar si su desempeo lo considera medio, y en
caso de observar un desempeo malo recuerde que puede solicitar tutora mediante el
campus virtual o telefnicamente.

Cuestin

Despus de responder,
el desempeo ha sido:
Malo

1.

Qu significa el orden de un rbol B?

2.

La pgina conocida como raz, tiene que obligatoriamente


tener un solo campo de datos ocupado?

3.

Las pginas hojas, pueden estar ubicadas en diferentes


niveles en los rboles B?

4.

Cuntos campos ocupados deben tener las pginas que no


son consideradas raz?

5.

Cmo es el funcionamiento del algoritmo de insercin de


elementos?

6.

Una pgina que no sea una hoja, cuntos hijos debe tener?

7.

En un rbol B, existe la posibilidad de que podamos tener


claves duplicadas?

8.

Para recorrer un rbol B, podramos utilizar los recorridos


estudiados en captulos anteriores?

Medio

Muy bien

Interactividad a travs de los Foros de Campus Virtual


/Ingrese peridicamente al campus virtual que se encuentra en la siguiente direccin:
http://www.utpl.edu.ec y de respuesta a las siguiente preguntas que se han previsto
como parte del foro, su aporte es importante.

Opine acerca de las diferencias, ventajas y desventajas de la utilizacin de rboles


AVL y rboles B.

Consulte en Internet temas relacionados con rboles B y comprtalos a travs del


foro.

Ejercicios
Para reforzar el nivel de conocimientos del presente captulo se deben realizar las
siguientes actividades.

Dada la secuencia de claves enteras: 190, 57, 89, 90, 121, 170, 35, 48, 91, 22,
126, 132 y 80 dibujar el rbol B de orden 5 cuya raz es R, que se corresponde
con dichas claves.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

35

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

En el rbol R del problema anterior, elimine la clave 91 y dibuje el rbol


resultante. Vuelva a eliminar ahora la clave 48. Dibujar el rbol resultante. ha
habido reduccin en el nmero de nodos?

En un rbol B de orden 5 se insertan las claves de manera secuencial: 1, 2, 3, .,


n. Qu claves dan origen a la divisin de un nodo? Qu claves hacen que la
altura del rbol crezca?

En el rbol B del ejercicio anterior, las claves son eliminadas en el mismo orden
en que fueron insertadas. Qu claves hacen que los nodos se queden con un
nmero de claves menor que 2 y den lugar a la unin de dos nodos? Qu claves
hace que la altura del rbol disminuya?

Documentacin adicional
Para ampliar la informacin del texto base se dispone de bibliografa adicional, que
estar disponible como Anexo a la Gua Didctica.
Descripcin del documento

Archivo disponible como


ANEXO 2

En este documento se abordan los siguientes


temas:
- rboles B
- Operaciones en un rbol B.
- Insercin.
- Eliminacin

36

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Anexo 2

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

Captulo 6

Grafos

Datos Generales:
Texto base

Anexo 3.

Captulo

Grafos

Pginas

Horas de estudio empleadas

10 horas

Propsito
Con el estudio de este captulo se pretende distinguir entre relaciones jerrquicas y otras
relaciones, definir un grafo e identificar sus componentes, conocer estructuras que nos
permitan representar grafos y las operaciones bsicas que se aplican sobre grafos.
Conceptos Clave
Vrtice
Con este nombre se conocer a los nodos que componen los grafos.
Arco
Tambin conocidos como aristas, representarn las relaciones existentes entre dos
nodos.
Orden
Es el nmero de vrtices que componen el grafo
Grado de un nodo
Representa al nmero de arcos que inciden sobre el nodo
Grafo completo
Es el grafo que contiene todos los posibles pares de relaciones.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

37

38

Anexo 3

Tema a
revisar

Ya que el captulo correspondiente


al tema de estudio no lo podemos
encontrar en el libro base, he
desarrollado la informacin
necesaria como anexo, el cual
cuenta con todos los temas
que nos interesa conocer sobre
Grafos.

Descripcin del contenido a


revisar
Se
recomienda
revisar
la
documentacin anexa y de ser
posible ampliar estoy conocimientos
con documentacin disponible en
Internet.

Actividades recomendadas
(fecha)

Planificacin
personal de
estudio
Requiero
Tutora?

Anotaciones

A continuacin se detallan los temas que se deben desarrollar, una descripcin general del mismo, y un conjunto de actividades que se
recomienda sean desarrolladas para una mejor asimilacin de los conceptos. Se han dispuesto las tres columnas de la derecha para llevar
un control personal del tiempo de dedicacin a cada tema, marcar las actividades que cada estudiante estima que necesita tutora y realizar
anotaciones personales.

Esquema de estudio
Gua didctica: Estructura de Datos y Algoritmos II

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

SEGUNDO BIMESTRE

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO BIMESTRE

Cuestiones de repaso captulo 6


Como medidor de asimilacin de los contenidos, desarrollaremos las siguientes
cuestiones de repaso; le recomendamos que responda las preguntas de auto evaluacin
y para su informacin registre el nivel de desempeo que observo, esto le permitir
saber los temas que debe volver a revisar si su desempeo lo considera medio, y en
caso de observar un desempeo malo recuerde que puede solicitar tutora mediante el
campus virtual o telefnicamente.

Cuestin

Despus de responder,
el desempeo ha sido:
Malo

1.

Qu es el orden de un grafo?

2.

Qu entiende por grado de entrada de un nodo?

3.

Cules son las maneras bsicas de representar un grafo?

4.

Cules son las dos tcnicas bsicas para recorrer un grafo?

5.

Qu entiende por camino?

6.

Qu diferencias podemos encontrar entre la representacin


mediante matriz de adyacencia y mediante listas de
adyacencia?

7.

El recorrido en anchura se realiza mediante la utilizacin de


una pila o una cola? Para qu se la utiliza?

Medio

Muy bien

Interactividad a travs de los Foros de Campus Virtual


Ingrese peridicamente al campus virtual que se encuentra en la siguiente direccin:
http://www.utpl.edu.ec y de respuesta a las siguiente preguntas que se han previsto
como parte del foro, su aporte es importante.

De ejemplos acerca de sistemas encontrados en la vida diaria, los cuales puedan


ser representados mediante grafos.

Consulte en Internet temas relacionados con rboles B y comprtalos a travs del


foro.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

39

Gua didctica: Estructura de Datos y Algoritmos II

SEGUNDO
SOLUCIONARIO
BIMESTRE

Documentacin adicional
Para ampliar la informacin del texto base se dispone de bibliografa adicional, que
estar disponible como Anexo a la Gua Didctica.
Descripcin del documento

Archivo disponible como


ANEXO 3

En este documento se abordan los siguientes


temas:
- Fundamentos y terminologa bsica
- Representacin de grafos.
- Recorrido de grafos

40

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Anexo 3

Gua didctica: Estructura de Datos y Algoritmos II

SOLUCIONARIO

Solucionario
Cuestiones de repaso captulo 1
No.

Cuestin

Respuesta

1.

Indique las principales diferencias La iteracin utiliza una estructura repetitiva, mientras
entre una funcin iterativa y una que la recursin utiliza una estructura de seleccin. La
funcin recursiva
iteracin termina cunado la condicin de un bucle no
se cumple, mientras que la recursin termina cuando
se reconoce un caso base o alcanza la condicin
de salida. La recursin invoca repetidamente al
mecanismo de llamadas a funciones mientras que la
iteracin se produce dentro de una misma funcin.

2.

Cules son las principales ventajas Brindan facilidad para dar solucin a numerosos
de utilizar la recursividad?
problemas que son de naturaleza recursivos, su
codificacin es ms sencilla y por consiguiente ms
facil de depurar.

3.

Cules son las principales desventajas Por el hecho de realizar repetidas llamadas a funciones,
de utilizar la recursividad?
necesita tiempo suplementario para estas llamadas,
los consume tiempo de procesador y espacio de
memoria.

4.

Explique cada uno de los siguientes


trminos

4.1.

Test para detener o continuar la Debe existir alguna condicional, la cual dependiendo
recursin
de sus resultados nos permitan escoger una de las
siguientes opciones.

4.2.

Componente base

Ser aquella sentencia que nos permita terminar la


recursin y devolver el control hacia el lugar desde
donde se llam a esta funcin

4.3.

Sentencia recursiva

Ser aquella sentencia que vuelva a hacer la


autollamada a la funcin.

5.

Indique las principales diferencias La recursividad directa se da cuando una funcin


entre la recursividad directa y la genera llamadas a si mismo hasta encontrar un
recursividad indirecta.
componente base.

6.

Explique las principales directrices


que se deben considerar para aplicar
una funcin recursiva o una funcin
iterativa.

Deberemos aplicar la recursin solo si no es posible una


solucin iterativa sencilla, si no afecta en la memoria del
sistema que estemos utilizando, la solucin recursiva
consumir mayor tiempo y memoria del sistema para
su ejecucin, las soluciones recursivas son mucho ms
sencillas de comprender.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

41

Gua didctica: Estructura de Datos y Algoritmos II

No.
7.

SOLUCIONARIO

Cuestin

Respuesta

Cules seran las consecuencias de La carencia de este elemento producir que se


prescindir del componente base en realicen las llamadas infinitas, lo que en un tiempo
una funcin recursiva?
determinado conducir a que se agote la memoria del
computador y se produzca una terminacin anormal
del programa.

Cuestiones de repaso captulo 2


No.

Cuestin

Respuesta

1.

De una definicin de archivo o fichero

2.

Los archivos, segn la organizacin de Acceso secuencial que se refiere al acceder a


sus registros, se pueden considerar de l segn el orden de almacenamiento de sus
dos tipos de accesos. Cules son? Y qu registros, uno tras otro.
significan cada uno de ellos?
Acceso directo que implica el acceso a un registro
determinado, sin tener que consultar los registros
precedentes

3.

Cules son los tipos de organizacin Secuencial, directa o aleatoria (random) y


de registros fundamentales que se secuencial indexada (indexed).
consideran?

4.

Cules son las caractersticas que Abre un archivo ya existente para modificar
proporciona al trabajo con archivos el (leer/escribir).
parmetro r+?

5.

Cules son las caractersticas que Abre un archivo binario para leer/escribir al final.
proporciona al trabajo con archivos el Si el archivo no existe crea un nuevo archivo.
parmetro a+b?

6.

Cules son las diferencias de trabajar Los archivos de texto son secuencias de caracteres
con archivos de texto y binarios?
que pueden ser directamente observados por el
usuario, mientras que en los archivos binarios
tenemos secuencias de 0 (ceros) y 1 (unos), lo cual
optimiza su almacenamiento en memoria pero
pude ser visualizado solamente desde el entorno
de un programa C.

7.

Explique brevemente como es el modo Utiliza dos archivos auxiliares en los cuales vamos
de trabajo del algoritmo de ordenacin almacenando alternadamente secuencias de 2n
(empezando con n = 0) elementos del archivo
por mezcla directa.
original, se realizan las pasadas que sean necesaria
hasta lograr que el archivo se encuentre totalmente
ordenado, llevando un incremento del elemento
n en cada pasada.

42

Es una coleccin de registros relacionados entre


si con aspectos en comn y organizados para un
propsito especfico.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

SOLUCIONARIO

No.
8.

Cuestin

Respuesta

Explique brevemente de que se trata el El direccionamiento Hash viene dado por la


direccionamiento Hash
conversin de un campo clave (un entero o una
cadena), en un valor entero dentro del rango de
posiciones que puede ocupar un registro de un
archivo.

Cuestiones de repaso captulo 3


No.

Cuestin

Respuesta

1.

Cules son los elementos que conforman Estn conformados por un conjunto finito de
un rbol?
elementos llamados nodos, y un conjunto finito
de lneas dirigidas llamadas ramas que conectan
los nodos

2.

Cul es la diferencia existente entre El nivel de un nodo es su distancia desde el nodo


el nivel de un nodo y su altura o raz. La altura s el nivel de la hoja del camino ms
profundidad?
largo desde la raz ms uno.

3.

Qu entiende usted por subrbol?

4.

Cules son las caractersticas principales Es un rbol en el que ningn nodo puede tener
de los rboles binarios?
ms de dos subrboles.

5.

Que entiende usted por balance o Es la diferencia en altura existentes entre los
equilibrio?
subrboles izquierdo y derecho del rbol.

6.

Cules son los elementos que conforman Un nodo est conformado por un campo dato y
un nodo para un rbol binario?
dos campos de tipo puntero.

7.

Cul es la diferencia entre recorrer un En anchura,. El proceso se realiza horizontalmente


rbol en anchura y en profundidad?
desde la raz a todos los hijos, a continuacin los
hijos de sus hijos y as sucesivamente hasta los
nodos hojas.

Es un subconjunto de nodos del rbol, conectados


por ramas del propio rbol, esto es, a su vez un
rbol.

En profundidad, se procesan primeramente todos


los descendientes de un hijo antes de proseguir
con los del siguiente hijo.
8.

Cules son los tipos de recorrido en Son: Preorden, Inorden y Posorden.


profundidad?

9.

Cul es la caracterstica principal de los Es aquel que dado un nodo, todos los datos del
rboles binarios de bsqueda?
subrbol izquierdo son menores que los datos
de ese nodo, mientras que todos los datos del
subrbol derecho son mayores que sus propios
datos.

10.

Cules son las principales operaciones Bsqueda, insercin, recorrido y borrado de


que podemos realizar con un ABB?
elementos.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

43

Gua didctica: Estructura de Datos y Algoritmos II

SOLUCIONARIO

No.

Cuestin

Respuesta

11.

Cuando deseamos eliminar un nodo de


un ABB, cul ser de ser necesario el
nodo que tomar su lugar para que siga
manteniendo las caractersticas de ABB?

Si el caso se da, deberemos escoger el mayor de


sus hijos menores. El cual siempre ser el nodo
que se encuentre mas a la derecha del subrbol
izquierdo.

Cuestiones de repaso captulo 4


No.

Cuestin

Respuesta

1.

Cul es la caracterstica particular de los En los rboles de este tipo no vamos a encontrar
rboles AVL?
un mayor desequilibrio entre sus subrboles, ya
que por cada nodo que ingrese o se elimine se
replantear el grfico para que siga mantenindose
equilibrado.

2.

El factor de equilibrio de un nodo, entre


qu valores debe oscilar para se siga
considerndose al rbol al cual pertenece
como AVL?

3.

Cul es la lgica que se utiliza para Inicialmente utilizamos la misma lgica que con
insertar elementos en un rbol AVL?
ABB, pero evaluamos el valor del campo que nos
muestra el factor de equilibrio, si ste nos muestra
el valor -2 o 2, debemos proceder a resolver el
desequilibrio con una de las cuatro rotaciones
existentes.

4.

En qu casos deberamos utilizar una En el caso de insertar un subrbol izquierdo en


rotacin simple?
una rama izquierda o un subrbol derecho en una
rama derecha.

5.

En qu casos deberamos utilizar una En el caso de insertar un subrbol derecho en una


rotacin doble?
rama izquierda o un subrbol izquierdo en una
rama derecha.

6.

En la eliminacin de elementos, ser


suficiente con realizar una ves alguna
de las rotaciones existentes para volver a
obtener la condicin de rbol equilibrado?
Por qu?

Solamente puede obtener los valores de: -1, 0 y


1, si se obtuviera un valor como 2 o -2, deber
aplicarse las correcciones necesarias para volver a
equilibrar el rbol.

Puede ser necesaria la aplicacin de ms de una


rotacin, porque a diferencia de la insercin
puede seguir existiendo desequilibrio luego de ya
haber realizado una rotacin.

Cuestiones de repaso captulo 5


No.

Cuestin

Respuesta

1.

Qu significa el orden de un rbol B

El orden de un rbol B se refiere al mximo


nmero de enlaces que puede tener un nodo.

2.

La pgina conocida como raz, tiene que No, es la nica pgina que puede tener un solo
obligatoriamente tener un solo campo de campo ocupado, pero puede tambin tener todos
datos ocupado?
sus campos llenos.

44

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

SOLUCIONARIO

No.

Cuestin

Respuesta

3.

Las pginas hojas, pueden estar ubicadas No, la estructura de un rbol B est diseada
en diferentes niveles en los rboles B?
para que todos sus pginas hojas estn siempre
ubicadas al mismo nivel.

4.

Cuntos campos ocupados deben tener Todas las pginas a excepcin de la raz, deben
las pginas que no son consideradas por lo menos tener ocupados m/2 campos de
raz?
informacin ocupados.

5.

Cmo es el funcionamiento del algoritmo Las claves en un rbol B, se organizan con un


de insercin de elementos?
algoritmo de bsqueda de la posicin a ocupar
basado en el algoritmo utilizado por los ABB, luego
dependiendo si la pgina est llena se aplica otro
tipo de algoritmo para solucionar el problema.

6.

Una pgina que no sea una hoja, cuntos Debe tener el nmero de campos ocupados mas
hijos debe tener?
1.

7.

En un rbol B, existe la posibilidad de No


que podamos tener claves duplicadas?

8.

Para recorrer un rbol B, podramos Si podra hacerse cualquiera de los recorridos


utilizar los recorridos estudiados en estudiados, pero el ms utilizado es el recorrido
captulos anteriores?
Inorden, al cual se le aplica una pequea variacin
para visitar todos los hijos del rbol B.

Cuestiones de repaso captulo 6


No.

Cuestin

Respuesta

1.

Qu es el orden de un grafo?

Es el nmero de nodos (vrtices) del grafo.

2.

Qu entiende por grado de entrada de Es el nmero de arcos que llegan a ese nodo.
un nodo?

3.

Cules son las maneras bsicas de Pueden ser representados por: matrices de
representar un grafo?
adyacencia, listas de adyacencia, matrices
dispersas.

4.

Cules son las dos tcnicas bsicas para En anchura o BFS (Breadth First Search) y en
recorrer un grafo?
profundidad o DFS (Depth First Search)

5.

Qu entiende por camino?

Un camino en el grafo G es una sucesin de


vrtices y arcos.

6.

Qu diferencias podemos encontrar


entre la representacin mediante matriz
de adyacencia y mediante listas de
adyacencia.

Para la representacin mediante matriz de


adyacencia se utiliza un vector qu indexe los
nodos, de manera que los arcos entre los nodos
se pueden ver como relaciones entre los ndices.
Para las listas de adyacencia se utilizan listas
enlazadas lo que evita el desperdicio de memoria
por aquellos espacios vacos.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

45

Gua didctica: Estructura de Datos y Algoritmos II

No.
7.

46

Cuestin

SOLUCIONARIO
ANEXOS

Respuesta

El recorrido en anchura se realiza Se utiliza una cola como estructura en la que se


mediante la utilizacin de una pila o una mantienen los vrtices marcados que se van a
cola? Para qu se la utiliza?
procesar posteriormente.

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

Gua didctica: Estructura de Datos y Algoritmos II

SOLUCIONARIO
ANEXOS

ANEXOS
El presente material ha sido reproducido con fines netamente didcticos, cuyo objetivo
es brindar al estudiante mayores elementos de juicio para la comprensin de la materia,
por lo tanto no tiene fin comercial.

ANEXO 1
RBOLES BALANCEADOS
INTRODUCCIN
Aunque las operaciones de bsqueda e insercin de elementos se realizan de una manera eficiente
en los rboles de bsqueda binaria, stos resultan ineficientes cuando el rbol crece o decrece
descontroladamente, an ms cuando los elementos que ingresamos en el rbol estn ordenados (Ver
figura 1), lo que causa un aumento considerable en el nmero de comparaciones que se deben realizar
cuando se desea ubicar un determinado elemento

Fig: 1 rbol Binario de Bsqueda


Como una solucin a este tipo de problemas, es necesaria la utilizacin de los rboles balanceados, los
cuales tienen como objetivo mantener el rbol lo ms equilibrado posible. Estos recurren a diferentes
mtodos de ordenamiento de los nodos que lo componen, tratando de ubicar a dichos nodos de una
forma que no afecte el balanceo del rbol. El objetivo principal del balanceo es minimizar (optimizar)
el nmero de comparaciones a realizar para lograr un mejor tiempo de acceso a sus datos

UNIVERSIDAD TCNICA PARTICULAR DE LOJA La Universidad Catlica de Loja

47

También podría gustarte