SlideShare una empresa de Scribd logo
1 de 28
Actividad #7 Teoría de Arboles
Universidad Nacional de Costa Rica
Curso: Estructuras Discretas para Informática
Estudiantes: Joshua Castro Alvarado
Oscar Salas Miranda
Alexander Sánchez
Josué Núñez
Profesor: Enrique Vílchez Quesada
Año: 2013
Es un algoritmo para recorrer o buscar elementos en un
grafo (usado frecuentemente sobre árboles).
Se comienza en la raíz (eligiendo algún nodo como
elemento raíz en el caso de un grafo) y se exploran todos
los vecinos de este nodo a continuación para cada uno
de los vecinos se exploran sus respectivos vecinos
adyacentes, y así hasta que se recorra todo el árbol.
Recorrido a lo largo:
Por ende el recorrido a lo ancho en este árbol seria:
20-14-44-8-31-9-7-15-9-4
Ejemplo:
Para observar mejor el recorrido
se va realizar paso a paso.
20
Primer Paso
Segundo Paso
Se inicia del nodo raíz
44
Tercer paso
Cuarto paso
8
31
Quinto Paso
Sexto Paso
9
Sétimo Paso
7
Octavo Paso
15
Noveno Paso
9
Décimo Paso:
4
Código en Wolfram
Mathematica
<< Combinatorica`
BuscarAncho[E_Graph, w_] :=
Module[{L = {}}, v = BreadthFirstTraversal[E, 1];
For[i = 1, i <= Length[v], h = 0;
L = Append[L, v[[i]]]; If[w == v[[i]], h = 1; Break[]]; i++];
If[h == 0, Print["El dato ", w, " no fue encontrado"],
Print["El dato " , w, " fue encontrado"]]
Print["El recorrido es: ", L]]
aux = RandomInteger[{4, 20}];
dato = Input["Digite el numero de busqueda"];
ShowGraph[G = CompleteBinaryTree[aux],
VertexNumberColor-> Red,
VertexNumber -> True, VertexPlotRange -> 0.1]
BuscarAncho[G, dato];
Explicación del método a lo ancho:
Explicación del método búsqueda a lo ancho:
Iniciamos utilizando Combinatorica, el cual es un paquete con el que cuenta Wolfram Mathematica
9.0 el cual levanta los distintos comandos que implementaremos en el siguiente código.
El método recibe un grafo “e” y un dato “w”, donde “w” es el dato que buscaremos en el
árbol...Utilizamos una lista L para guardar todo el recorrido a lo ancho del árbol.
En el método búsqueda a lo ancho, el comando BreadFirstTraversal realiza un recorrido a lo ancho
sobre un grafo G a partir de un vértice a.
Inicializando una lista L como vacía, empleamos un For para ir recorriendo toda la lista L...
Además, utilizamos el comando Append para ir guardando en la lista L el dato v[[i]] donde i es la
posición
Continuamos implementando un If , el cual sirve para determina que si el dato w es igual al dato
que se tiene en la lista en la posición “i”, le asigne un 1 al valor de h y realiza un quiebre en el
ciclo...
Si h llega a ser igual a 0, este imprimirá que el dato no fue encontrado, sino imprimirá el dato
como encontrado.
Explicación del método a lo ancho:
Continuamos formando el recorrido que se tomó para encontrar el
dato:
Inicializamos una variable “aux” con una cantidad de números
aleatorio del 4 al 20 utilizando el comando RandomInteger,
después pediremos al usuario el dato que se va a explorar y lo
guardaremos en un variable dato.
Utilizamos el comando ShowGraph para generar el árbol y el
comando CompleteBinaryTree el cual construye el árbol binario con
“n” vértices…
Al final se imprimirá el recorrido que se realizó para encontrar el
dato.
Recorrido a lo largo
El recorrido a lo largo o en profundidad toma
como punto de partida un nodo del grafo y
continúa con el nodo sucesor por lo que el
desplazamiento se hace hacia delante mientras
sea posible y se trata de encontrar el nodo más
profundo esto se hace aplicando el recorrido a
profundidad en forma recursiva.
Ejemplo:
El recorrido a lo largo en este árbol seria:
20-14-8-15-31-9-4-44-9-7
Para poseer un mejor entendimiento del
recorrido a lo largo se explicará paso a paso.
Primer Paso
Se inicia del nodo raíz
Segundo Paso
20
20
14
Tercer Paso 20
14
8
Cuarto Paso 20
14
8
15
Quinto Paso 20
14
318
15
Sexto Paso 20
14
318
15
9
Sétimo Paso
14
318
15
20
9 4
Octavo Paso
14
31
8
15
20
9 4
44
Noveno Paso
14
31
8
15
20
9 4
44
9
14
31
8
15
20
9 4
44
9 7
Décimo Paso
Código en Wolfram
Mathematica
<< Combinatorica`
BuscarLargo[E_Graph, w_] :=
Module[{L = {}}, v = DepthFirstTraversal[E, 1];
For[i = 1, i <= Length[v],
h = 0;
L = Append[L, v[[i]]]; If[w == v[[i]], h = 1; Break[]]; i++];
Print["Algoritmo de búsqueda a lo largo:"]
If[h == 0, Print["El dato ", w, " no fue encontrado"],
Print["El dato " , w, " fue encontrado"]]
Print["El recorrido es: ", L]]
aux = RandomInteger[{4, 20}];
dato = Input["Digite el numero de busqueda"];
ShowGraph[G = CompleteBinaryTree[aux], VertexNumberColor ->
Red,
VertexNumber -> True, VertexPlotRange -> 0.1]
BuscarLargo[G, dato];
Explicación del método búsqueda a lo largo:
Iniciamos utilizando Combinatorica, el cual es un paquete con el que cuenta Wolfram
Mathematica 9.0 el cual levanta los distintos comandos que implementaremos en el
siguiente código.
El método recibe un grafo “e” y un dato “w”, donde “w” es el dato que buscaremos en el
árbol...Utilizamos una lista L para guardar todo el recorrido a lo largo del árbol.
En el método búsqueda a lo largo, el comando DephtFirstTraversal realiza un recorrido a lo
largo sobre un grafo G a partir de un vértice a.
Inicializando una lista L como vacía, empleamos un For para ir recorriendo toda la lista L...
Además, utilizamos el comando Append para ir guardando en la lista L el dato v[[i]] donde i
es la posición
Continuamos implementando un If , el cual sirve para determina que si el dato w es igual al
dato que se tiene en la lista en la posición “i”, le asigne un 1 al valor de h y realiza un
quiebre en el ciclo...
Si h llega a ser igual a 0, este imprimirá que el dato no fue encontrado, sino imprimirá el
dato como encontrado.
Explicación del método a lo largo:
Continuamos formando el recorrido que se tomó para encontrar el
dato:
Inicializamos una variable “aux” con una cantidad de números
aleatorio del 4 al 20 utilizando el comando
RandomInteger, después pediremos al usuario el dato que se va a
explorar y lo guardaremos en un variable dato.
Utilizamos el comando ShowGraph para generar el árbol y el
comando CompleteBinaryTree el cual construye el árbol binario con
“n” vértices…
Al final se imprimirá el recorrido que se realizó para encontrar el
dato.
Explicación del método a lo largo:
Conclusión
De esta manera podemos demostrar como los algoritmos búsqueda
primero a lo ancho y busca primero a lo largo sirven como
algoritmos de búsqueda.

Más contenido relacionado

Destacado

Matematica Discreta
Matematica DiscretaMatematica Discreta
Matematica Discretafrodosini
 
Teoría de decisión
Teoría de decisiónTeoría de decisión
Teoría de decisiónGabriel Pujol
 
Presentacion Proyecto Grupo Nro 02
Presentacion Proyecto Grupo Nro 02Presentacion Proyecto Grupo Nro 02
Presentacion Proyecto Grupo Nro 02matediscretas
 
Matematica discreta2011 unidad3_2ºparte_2011
Matematica discreta2011 unidad3_2ºparte_2011Matematica discreta2011 unidad3_2ºparte_2011
Matematica discreta2011 unidad3_2ºparte_2011gmromano
 
Matemática Discreta y Lógica/Fanjul Roberto
Matemática Discreta y Lógica/Fanjul RobertoMatemática Discreta y Lógica/Fanjul Roberto
Matemática Discreta y Lógica/Fanjul RobertoBiblioteca Central FACET
 
Arboles teoria 1
Arboles teoria 1Arboles teoria 1
Arboles teoria 1RBonvicino
 
Apuntes De Matematicas Discretas
Apuntes De Matematicas DiscretasApuntes De Matematicas Discretas
Apuntes De Matematicas Discretasguest553c2e
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datosnukeeHE
 
Matematica discretas presentación inicial
Matematica discretas  presentación inicialMatematica discretas  presentación inicial
Matematica discretas presentación inicialJairo Galeas
 
Árboles Binarios y Grafos
Árboles Binarios  y GrafosÁrboles Binarios  y Grafos
Árboles Binarios y GrafosNoel E Jimenez
 
17 Introduccion Arboles
17 Introduccion Arboles17 Introduccion Arboles
17 Introduccion ArbolesUVM
 
Matematica discreta diapositivas nº 1
Matematica discreta   diapositivas nº 1Matematica discreta   diapositivas nº 1
Matematica discreta diapositivas nº 1Grabiel Alvarez
 

Destacado (20)

Matematica Discreta
Matematica DiscretaMatematica Discreta
Matematica Discreta
 
Teoría de decisión
Teoría de decisiónTeoría de decisión
Teoría de decisión
 
Presentacion Proyecto Grupo Nro 02
Presentacion Proyecto Grupo Nro 02Presentacion Proyecto Grupo Nro 02
Presentacion Proyecto Grupo Nro 02
 
Matematica discreta2011 unidad3_2ºparte_2011
Matematica discreta2011 unidad3_2ºparte_2011Matematica discreta2011 unidad3_2ºparte_2011
Matematica discreta2011 unidad3_2ºparte_2011
 
Matemática Discreta y Lógica/Fanjul Roberto
Matemática Discreta y Lógica/Fanjul RobertoMatemática Discreta y Lógica/Fanjul Roberto
Matemática Discreta y Lógica/Fanjul Roberto
 
Arboles teoria 1
Arboles teoria 1Arboles teoria 1
Arboles teoria 1
 
Apuntes De Matematicas Discretas
Apuntes De Matematicas DiscretasApuntes De Matematicas Discretas
Apuntes De Matematicas Discretas
 
Estructura de datos
Estructura de datosEstructura de datos
Estructura de datos
 
Arboles
ArbolesArboles
Arboles
 
Matematica discretas presentación inicial
Matematica discretas  presentación inicialMatematica discretas  presentación inicial
Matematica discretas presentación inicial
 
Árboles Binarios y Grafos
Árboles Binarios  y GrafosÁrboles Binarios  y Grafos
Árboles Binarios y Grafos
 
Arboles
ArbolesArboles
Arboles
 
Relaciones binarias aux
Relaciones binarias auxRelaciones binarias aux
Relaciones binarias aux
 
17 Introduccion Arboles
17 Introduccion Arboles17 Introduccion Arboles
17 Introduccion Arboles
 
Arboles con raiz
Arboles con raizArboles con raiz
Arboles con raiz
 
ARBOLES
ARBOLESARBOLES
ARBOLES
 
Matematica discreta diapositivas nº 1
Matematica discreta   diapositivas nº 1Matematica discreta   diapositivas nº 1
Matematica discreta diapositivas nº 1
 
Arboles de expresion
Arboles de expresionArboles de expresion
Arboles de expresion
 
Actividad Teoría de Árboles.
Actividad Teoría de Árboles.Actividad Teoría de Árboles.
Actividad Teoría de Árboles.
 
Arboles
ArbolesArboles
Arboles
 

Similar a Actividad#7,Arboles subgrupo #1

Depth-first Search
Depth-first SearchDepth-first Search
Depth-first SearchRaúl
 
Depth-first Search
Depth-first SearchDepth-first Search
Depth-first SearchRaúl
 
Ordenación de vectores en c++
Ordenación de vectores en c++Ordenación de vectores en c++
Ordenación de vectores en c++kjjkfhjsfhjsfh
 
Ordenación de vectores en c++
Ordenación de vectores en c++Ordenación de vectores en c++
Ordenación de vectores en c++kjjkfhjsfhjsfh
 
Graficas estadísticas
Graficas estadísticasGraficas estadísticas
Graficas estadísticasCristian786036
 
El algoritmo a (asterisco)
El algoritmo a (asterisco)El algoritmo a (asterisco)
El algoritmo a (asterisco)Cristina Lopez
 
Metodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a ObjetosMetodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a ObjetosWilliam Diaz S
 
Vectores en power point [recuperado]
Vectores en power point [recuperado]Vectores en power point [recuperado]
Vectores en power point [recuperado]herminiajimenez123
 
trabajo grupal de Vectores Unidimencionales C++
trabajo grupal  de Vectores Unidimencionales C++trabajo grupal  de Vectores Unidimencionales C++
trabajo grupal de Vectores Unidimencionales C++AronSilva
 
trabajo grupal de Vectores Unidimencionales C++
trabajo grupal  de Vectores Unidimencionales C++trabajo grupal  de Vectores Unidimencionales C++
trabajo grupal de Vectores Unidimencionales C++OmarZambranoh
 
Estadistica descriptiva
Estadistica descriptivaEstadistica descriptiva
Estadistica descriptivaYeny Alegre
 

Similar a Actividad#7,Arboles subgrupo #1 (20)

Arbol
ArbolArbol
Arbol
 
Arbol
ArbolArbol
Arbol
 
Depth-first Search
Depth-first SearchDepth-first Search
Depth-first Search
 
Depth-first Search
Depth-first SearchDepth-first Search
Depth-first Search
 
Ordenación de vectores en c++
Ordenación de vectores en c++Ordenación de vectores en c++
Ordenación de vectores en c++
 
Ordenación de vectores en c++
Ordenación de vectores en c++Ordenación de vectores en c++
Ordenación de vectores en c++
 
Presentacion
PresentacionPresentacion
Presentacion
 
Aplicaciones de los árboles y grafos
Aplicaciones de los árboles y grafosAplicaciones de los árboles y grafos
Aplicaciones de los árboles y grafos
 
Graphs
GraphsGraphs
Graphs
 
Graficas estadísticas
Graficas estadísticasGraficas estadísticas
Graficas estadísticas
 
El algoritmo a (asterisco)
El algoritmo a (asterisco)El algoritmo a (asterisco)
El algoritmo a (asterisco)
 
Metodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a ObjetosMetodologia para resolver problemas con Programacion orientada a Objetos
Metodologia para resolver problemas con Programacion orientada a Objetos
 
Vectores y matrices
Vectores y matricesVectores y matrices
Vectores y matrices
 
Vectores en power point [recuperado]
Vectores en power point [recuperado]Vectores en power point [recuperado]
Vectores en power point [recuperado]
 
Algoritmo por seleccion
Algoritmo por seleccionAlgoritmo por seleccion
Algoritmo por seleccion
 
Administrador,+7.pdf
Administrador,+7.pdfAdministrador,+7.pdf
Administrador,+7.pdf
 
trabajo grupal de Vectores Unidimencionales C++
trabajo grupal  de Vectores Unidimencionales C++trabajo grupal  de Vectores Unidimencionales C++
trabajo grupal de Vectores Unidimencionales C++
 
trabajo grupal de Vectores Unidimencionales C++
trabajo grupal  de Vectores Unidimencionales C++trabajo grupal  de Vectores Unidimencionales C++
trabajo grupal de Vectores Unidimencionales C++
 
Estadistica descriptiva
Estadistica descriptivaEstadistica descriptiva
Estadistica descriptiva
 
Teoría de árboles
Teoría de árbolesTeoría de árboles
Teoría de árboles
 

Último

ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicaFlor Idalia Espinoza Ortega
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 

Último (20)

ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
celula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamicacelula, tipos, teoria celular, energia y dinamica
celula, tipos, teoria celular, energia y dinamica
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 

Actividad#7,Arboles subgrupo #1

  • 1. Actividad #7 Teoría de Arboles Universidad Nacional de Costa Rica Curso: Estructuras Discretas para Informática Estudiantes: Joshua Castro Alvarado Oscar Salas Miranda Alexander Sánchez Josué Núñez Profesor: Enrique Vílchez Quesada Año: 2013
  • 2. Es un algoritmo para recorrer o buscar elementos en un grafo (usado frecuentemente sobre árboles). Se comienza en la raíz (eligiendo algún nodo como elemento raíz en el caso de un grafo) y se exploran todos los vecinos de este nodo a continuación para cada uno de los vecinos se exploran sus respectivos vecinos adyacentes, y así hasta que se recorra todo el árbol. Recorrido a lo largo:
  • 3. Por ende el recorrido a lo ancho en este árbol seria: 20-14-44-8-31-9-7-15-9-4 Ejemplo:
  • 4. Para observar mejor el recorrido se va realizar paso a paso. 20 Primer Paso Segundo Paso Se inicia del nodo raíz
  • 11. << Combinatorica` BuscarAncho[E_Graph, w_] := Module[{L = {}}, v = BreadthFirstTraversal[E, 1]; For[i = 1, i <= Length[v], h = 0; L = Append[L, v[[i]]]; If[w == v[[i]], h = 1; Break[]]; i++]; If[h == 0, Print["El dato ", w, " no fue encontrado"], Print["El dato " , w, " fue encontrado"]] Print["El recorrido es: ", L]] aux = RandomInteger[{4, 20}]; dato = Input["Digite el numero de busqueda"]; ShowGraph[G = CompleteBinaryTree[aux], VertexNumberColor-> Red, VertexNumber -> True, VertexPlotRange -> 0.1] BuscarAncho[G, dato];
  • 12. Explicación del método a lo ancho: Explicación del método búsqueda a lo ancho: Iniciamos utilizando Combinatorica, el cual es un paquete con el que cuenta Wolfram Mathematica 9.0 el cual levanta los distintos comandos que implementaremos en el siguiente código. El método recibe un grafo “e” y un dato “w”, donde “w” es el dato que buscaremos en el árbol...Utilizamos una lista L para guardar todo el recorrido a lo ancho del árbol. En el método búsqueda a lo ancho, el comando BreadFirstTraversal realiza un recorrido a lo ancho sobre un grafo G a partir de un vértice a. Inicializando una lista L como vacía, empleamos un For para ir recorriendo toda la lista L... Además, utilizamos el comando Append para ir guardando en la lista L el dato v[[i]] donde i es la posición Continuamos implementando un If , el cual sirve para determina que si el dato w es igual al dato que se tiene en la lista en la posición “i”, le asigne un 1 al valor de h y realiza un quiebre en el ciclo... Si h llega a ser igual a 0, este imprimirá que el dato no fue encontrado, sino imprimirá el dato como encontrado.
  • 13. Explicación del método a lo ancho: Continuamos formando el recorrido que se tomó para encontrar el dato: Inicializamos una variable “aux” con una cantidad de números aleatorio del 4 al 20 utilizando el comando RandomInteger, después pediremos al usuario el dato que se va a explorar y lo guardaremos en un variable dato. Utilizamos el comando ShowGraph para generar el árbol y el comando CompleteBinaryTree el cual construye el árbol binario con “n” vértices… Al final se imprimirá el recorrido que se realizó para encontrar el dato.
  • 14. Recorrido a lo largo
  • 15. El recorrido a lo largo o en profundidad toma como punto de partida un nodo del grafo y continúa con el nodo sucesor por lo que el desplazamiento se hace hacia delante mientras sea posible y se trata de encontrar el nodo más profundo esto se hace aplicando el recorrido a profundidad en forma recursiva.
  • 16. Ejemplo: El recorrido a lo largo en este árbol seria: 20-14-8-15-31-9-4-44-9-7
  • 17. Para poseer un mejor entendimiento del recorrido a lo largo se explicará paso a paso. Primer Paso Se inicia del nodo raíz Segundo Paso 20 20 14
  • 18. Tercer Paso 20 14 8 Cuarto Paso 20 14 8 15
  • 19. Quinto Paso 20 14 318 15 Sexto Paso 20 14 318 15 9
  • 25. << Combinatorica` BuscarLargo[E_Graph, w_] := Module[{L = {}}, v = DepthFirstTraversal[E, 1]; For[i = 1, i <= Length[v], h = 0; L = Append[L, v[[i]]]; If[w == v[[i]], h = 1; Break[]]; i++]; Print["Algoritmo de búsqueda a lo largo:"] If[h == 0, Print["El dato ", w, " no fue encontrado"], Print["El dato " , w, " fue encontrado"]] Print["El recorrido es: ", L]] aux = RandomInteger[{4, 20}]; dato = Input["Digite el numero de busqueda"]; ShowGraph[G = CompleteBinaryTree[aux], VertexNumberColor -> Red, VertexNumber -> True, VertexPlotRange -> 0.1] BuscarLargo[G, dato];
  • 26. Explicación del método búsqueda a lo largo: Iniciamos utilizando Combinatorica, el cual es un paquete con el que cuenta Wolfram Mathematica 9.0 el cual levanta los distintos comandos que implementaremos en el siguiente código. El método recibe un grafo “e” y un dato “w”, donde “w” es el dato que buscaremos en el árbol...Utilizamos una lista L para guardar todo el recorrido a lo largo del árbol. En el método búsqueda a lo largo, el comando DephtFirstTraversal realiza un recorrido a lo largo sobre un grafo G a partir de un vértice a. Inicializando una lista L como vacía, empleamos un For para ir recorriendo toda la lista L... Además, utilizamos el comando Append para ir guardando en la lista L el dato v[[i]] donde i es la posición Continuamos implementando un If , el cual sirve para determina que si el dato w es igual al dato que se tiene en la lista en la posición “i”, le asigne un 1 al valor de h y realiza un quiebre en el ciclo... Si h llega a ser igual a 0, este imprimirá que el dato no fue encontrado, sino imprimirá el dato como encontrado. Explicación del método a lo largo:
  • 27. Continuamos formando el recorrido que se tomó para encontrar el dato: Inicializamos una variable “aux” con una cantidad de números aleatorio del 4 al 20 utilizando el comando RandomInteger, después pediremos al usuario el dato que se va a explorar y lo guardaremos en un variable dato. Utilizamos el comando ShowGraph para generar el árbol y el comando CompleteBinaryTree el cual construye el árbol binario con “n” vértices… Al final se imprimirá el recorrido que se realizó para encontrar el dato. Explicación del método a lo largo:
  • 28. Conclusión De esta manera podemos demostrar como los algoritmos búsqueda primero a lo ancho y busca primero a lo largo sirven como algoritmos de búsqueda.