AI U3 Estrategia de Arboles Para la Busqueda_MHB.docx
Ingeniería en Sistemas Computacionales
Análisis y diseño de Algoritmos Avanzado
(ISC123 2023-2)
Actividad Integradora
Unidad III
1
Titulo
ESTRATEGIA DE ÁRBOLES PARA LA BÚSQUEDA
Nombre
Marcos Hernández Barrientos
Matricula
A0129371943
Ingeniería en Sistemas Computacionales
Análisis y diseño de Algoritmos Avanzado
(ISC123 2023-2)
Actividad Integradora
Unidad III
2
INTRODUCCIÓN
La búsqueda en árboles binarios es un método de búsqueda simple, dinámico y
eficiente considerado como uno de los fundamentales en Ciencia de la Computación.
De toda la terminología sobre árboles,tan sólo recordar que la propiedad que define
un árbol binario es que cada nodo tiene a lo más un hijo a la izquierda y uno a la
derecha.
Un árbol impone una estructura jerárquica sobre una colección de objetos. La
tiización de árboles se presentan tanto dentro como fuera del área de computación
(indices de libros, árboles genealógicos, etc.); en Informática constituyen una de las
estructuras más utilizadas, con aplicaciones que van desde los árboles sintácticos
utilizados para la representación y/o interpretación de términos de un lenguaje o
expresiones aritméticas, pasando por los arboles de activación de procedimientos
recursivos, hasta la representación de datos que se desea mantener ordenados con
un tiempo de acceso relativamente bajo. En general, se usarán árboles siempre que
se quiera representar información jerarquizada, cuando esta converja en un solo
punto.
Ingeniería en Sistemas Computacionales
Análisis y diseño de Algoritmos Avanzado
(ISC123 2023-2)
Actividad Integradora
Unidad III
3
DESARROLLO
Aspecto 1: Resuelve el siguiente ejercicio relacionado con el
lenguaje de programación orientada a objetos:
Given:
1.
2.
3. public class Spock {
4. public static void main(String[] args) {
5. int mask = 0;
6. int count = 0;
7. if( ((5<7) || (++count < 10)) | mask++ < 10 ) mask = mask + 1;
8. if( (6 > 8) ^ false) mask = mask + 10;
9. if( !(mask > 1) && ++count > 1) mask = mask + 100;
10. System.out.println(mask + " " + count);
11. }
12. }
Which two are true about the value of mask and the value of count at line 10?
(Choose two.)
A. mask is 0
B. mask is 1
C. mask is 2
D. mask is 10
E. mask is greater than 10
Ingeniería en Sistemas Computacionales
Análisis y diseño de Algoritmos Avanzado
(ISC123 2023-2)
Actividad Integradora
Unidad III
4
F. count is 0
G. count is greater than 0
The correct answer is "mask is 1 and count is 1"
CONCLUSION
Un árbol de búsqueda es una estructura de datos de tipo árbol utilizado para
localizar llaves concretas dentro de un conjunto. Para que un árbol pueda funcionar
como árbol de búsqueda en cada nodo tiene que cumplirse que su llave tiene que
ser más grande que cualquier llave contenida en su subárbol izquierdo y menor que
cualquier llave contenida en su subárbol derecho.
La ventaja de los árboles de búsqueda es su eficiencia en el tiempo de búsqueda,
dado que el árbol está razonablemente balanceado, lo que quiere decir que todas
las hojas se encuentran a profundidades similares. Existen varias estructuras de
datos de tipo árbol de búsqueda, varias de las cuales también permiten la inserción
y eliminación eficiente de elementos, operaciones que tienen que mantener el
equilibrio del árbol.
Ingeniería en Sistemas Computacionales
Análisis y diseño de Algoritmos Avanzado
(ISC123 2023-2)
Actividad Integradora
Unidad III
5
Bibliografía
Artificial, I. (2012). Técnicas básicas de búsqueda para la resolución de problemas.
Lee, T. C. (s.f.). Introducción al diseño y análisis de algoritmos_un enfoque estratégico.
Soltys, M. (2012). Introduction to the Analysis of Algorithms.