Está en la página 1de 16

UNIVERSIDAD AUTONOMA DE NUEVO LEON

FACULTAD DE INGINERIA Y ELECTRICA

ALOGORITMOS COMPUTACIONALES

Actividad 3 Fundamental

EQUIPO #4

Ernesto Alonso López Rivera #1911145


Gerardo Daniel García Salinas #1619720
Alejandro Pérez Mandujano #1825203
Introducción a los arboles
Los árboles son las estructuras de datos no lineales y dinámicas de datos más importantes
del área de computación.
Estructuras estáticas Estructuras dinámicas
Arreglos Líneas
Registros Arboles
Gráficas

Estructuras lineales estructuras no lineales


arreglos Arboles
registros Gráficas
pilas
colas
listas

Árboles en general
Un árbol se puede definir como una estructura jerárquica aplicada sobre una colección de
elementos objetos llamados nodos uno de los cuales es conocido como raíz.
Importante:
Formalmente se define un árbol de tipo T como una estructura homogénea resultado de la
concentración de un elemento de tipo T con un número finito de árboles disjuntos llamado
árbol es una forma particular de árbol es el árbol vacío.

Características y propiedades de los árboles


la estructura tipo árbol tiene ciertas características y propiedades que distinguen a
continuación se presentan las más importantes:
a) Todo árbol que no es vacío tiene un único nodo raíz
b) Un nodo x es descendiente directo de un nodo Y sí el nodo x es apuntado por el
nodo Y en este caso es común utilizar la expresión x es hijo de Y.

c) Un nodo x es antecesor directo de uno nodo Y sí el nodo x apunta de nodo Y en este


caso es común utilizar la expresión x es padre de Y.

d) Se dice que todos los nodos que son descendientes directos hijos de un mismo nodo
padre son hermanos.

e) Todo nodo que no tiene ramificaciones hijos se conoce con el nombre de terminal u
hoja.
Dado el árbol general de la figura 6.2 se puede afirmar lo siguiente.

1-A es la raíz del árbol

2- B es hijo A.
C es hijo A.
D es hijo B.
E es hijo B

3-A es padre de B
B es padre de D
D es padre I
C es padre G
H es padre de I

4- B Y C son hermanos
D,E,F son hermanos
G y H son hermanos

5-I,E,J,K,G y L son nodos terminarles iguales

6-B,D,F,C y H son nodos interiores

7-El grado del nodo A es 2


El grado del nodo B es 3
El grado del nodo C es 2
El grado del nodo D es 1
El grado del nodo E es 0
El grado del árbol es 3

8-El nivel del nodo A es 1


El nivel del nodo B es 2
El nivel del nodo D es 3
El nivel del nodo C es 2
El nivel del nodo L es 4

9-La altura del árbol es 4

Arboles binarios

Un árbol ordenado es aquel en la cual la distribución de la rama sigue en cierto


orden.

Los árboles ordenados de grado 2 son de especial interés en el área de computación


porque permite representar la información relacionada con la solución de muchos
problemas.

Árboles binarios distintos similares equivalentes

Dos árboles binarios son distintos cuando son estructura la distribución de nodos y
arcos son diferentes.

Dos árboles binarios son similares cuando sus estructuras son idénticas pero la información
que contiene sus no difiere entre sí.
Por último, los árboles binarios y equivalente se definen como aquellos que son similares y
además los contienen la misma información.

Pilas y Colas
Una pila representa una estructura lineal de datos en la que se puede agregar o quitar
elementos únicamente por uno de los 2 extremos.
Representación de pilas
Las pilas no son estructuras fundamentales de datos es decir no están definidas como tales
en los lenguajes de programación para su representación requieren el uso de otras
estructuras de datos como:
 Arreglos
 Listas

Colas
Un Cola constituye un nivel de estructuras en los nuevos elementos producen por último
trimestre y los ya existentes se eliminan por otro es importante señalar que los componentes
de la cola se eliminan en el mismo orden en lo cual se insertaron es decir el primer
elemento que se introduce en la estructura será el que se eliminaría en primer orden.

Representación de colas
Las colas al igual que las pilas no existen como estructuras de datos estándar de los
lenguajes de programación este tipo de estructuras se datos se puede representar mediante
el uso de:
 Arreglos
 Listas

Colas circulares

Una cola circular constituye una estructura de datos lineal en la cual siguiente
elemento del último en realidad es el primero utiliza de manera más eficiente la
memoria de la computadora.
Métodos de búsqueda

Búsqueda interna

La búsqueda interna trabaja elementos que se encuentran almacenados en la


memoria principal de la máquina estos pueden ser estructuras estáticas arreglo
dinámica las ligadas y árboles los métodos de búsqueda interna más importantes
son:

 Secuencial o Lineal
 Binaria

Búsqueda secuencial
La búsqueda secuencial consiste en revisar elemento 3 elemento hasta encontrar el
dato buscado para llegar al final del conjunto de datos disponible.

Búsqueda binaria

La búsqueda binaria consiste en dividir el intervalo de búsqueda en 2 partes


comparando el elemento buscado con el que ocupa la posición central en el arreglo
para el caso de que no fueran iguales se redefinen los extremos del intervalo según
el elemento central sea mayor o menor elemento buscado disminuyendo de esta
forma el espacio de búsqueda.

N C MIN C MRDE C max


10 1 5.5 10
100 1 50.5 100
500 1 250.5 500
10,000 1 5000.5 10,000

Búsqueda por transformación de claves

Los 2 métodos analizados anteriormente permiten encontrar un elemento un arreglo


en ambos casos el tiempo de búsqueda profesional a su número de componentes ir a
mayor número de elementos se debe realizar mayor número de comparaciones.
N C min C med C max
10 1 2.5 4
100 1 4 7
500 1 5 9
Grafos
Las gráficas o grafos son estructuras de datos no lineales donde cada componente puede
tener uno o mas predecesores y sucesores. En las gráficas existen los dos elementos que
son: los nodos o vértices, y los arcos o aristas, que conectan los vértices con otros.

Definición de gráfica
Una gráfica G consiste en dos conjuntos: V(G) y A(G). En el primero se encuentran los
nodos o vértices, en el segundo los arcos o aristas, resultando la denotación de la gráfica
como: G = (V.A) , donde V representa el conjunto de vértices de G, y A el conjunto de
aristas de G.

Conceptos básicos
 Grado de un vértice(v): el número de aristas que contienen a v, es decir, que tienen
a v como extremo.
 Lazo o bucle: una arista que conecta a un vértice consigo mismo.
 Camino: un camino P de longitud n es la secuencia de n vértices que se debe seguir
para llegar del vértice de origen al vértice destino.
 Camino cerrado: un camino P cuyos primer y último vértices son iguales.
 Camino simple: un camino en el que todos sus nodos son distintos, excepto el
primero y el ultimo.
 Ciclo: es un camino simple cerrado de longitud 3 o mayor.
 Gráfica conexa: una gráfica en la cual existe un camino simple entre alguno se sus
nodos.
 Gráfica árbol: es una gráfica G que es conexa y no tiene ciclos.
 Gráfica completa: una gráfica G en la cual cada vértice v de G es adyacente a
todos los demás vértices de G.
 Gráfica etiquetada: una gráfica G en la cual sus aristas a tienen asignado un valor
numérico no negativo, llamado costo, peso o longitud de a.
 Multigráfica: una gráfica en la cual al menos dos de sus vértices están conectados
entre si por dos aristas. Dichas aristas se les llama aristas múltiples o paralelas.

Gráficas dirigidas
Una gráfica dirigida G, o digráfica, se caracteriza porque cada arista a tiene una dirección
asignada, es decir, que están asociadas a un par ordenado (u, v) de vértices de G. La arista
dirigida a = (u, v) se llama arco y por lo general se expresa como u →v.

Matriz de adyacencia
Una matriz de adyacencia es una matriz booleana de orden n, donde n indica el número de
vértices de G. Los renglones y columnas de la matriz representan a los vértices y si
contienen o no arcos en ellos, almacenando un 1 o 0 respectivamente.
Lista de adyacencia
Una lista de adyacencia para un vértice a es una lista ordenada de todos los vértices
adyacentes de a. Si se usa para representar una gráfica dirigida entonces estaría formada
según cuantos vértices tenga G. Los vértices de G se pueden guardar en otra lista o un
arreglo.

Métodos de ordenación
La ordenación es la reagrupación o reorganización de un conjunto de datos u objetos en una
secuencia específica. Formalmente se define de la siguiente manera: sea A una lista de N
elementos:
A1, A2, A3, …, AN
Ordenar significa permutar los elementos de tal forma que queden de acuerdo con una
distribución preestablecida.
Existen dos categorías en que se clasifican a los métodos de ordenación: la ordenación
interna, que ordena arreglos y se almacenan en la memoria principal de la computadora, y
la ordenación externa, que ordena archivos y se almacenan en dispositivos de
almacenamiento secundario.

Ordenación interna
Ordenación por intercambio directo (burbuja)
Este método es uno de los más sencillos de programar, pero también se puede decir que es
el menos eficiente. Consiste principalmente en comparar pares de elementos adyacentes e
intercambiarlos entre sí hasta que todos queden ordenados.
Método de intercambio directo con señal
Es una modificación del método burbuja, donde se utiliza una marca o señal para indidar
que no se ha producido ningún intercambio en una pasada.

Método de la sacudida (shaker sort)


Es un método optimizado del intercambio directo, que consiste en mezclar las dos formas
de intercambio del método de la burbuja en una sola pasada.

Método de inserción
Este método, también conocido como método de la baraja, consiste en insertar un elemento
del arreglo en su parte izquierda, que ya se encuentra ordenada. Esto se repite del segundo
al n-ésimo elemento.
Método de selección directa
Es uno de los métodos más eficientes, aunque no se recomienda con arreglos medianos o
grandes. Consiste en buscar el menor elemento del arreglo y colocarlo en la primera
posición. Luego se busca el segundo elemento más pequeño y se coloca en la segunda
posición, y así sucesivamente.

Ordenación externa
Método de Intercalación de archivos
Es la unión de dos o más archivos, ordenados según un campo clave, en un solo archivo.
Ordenación de archivos
Esta se efectúa cuando el volumen de los datos es muy grande como para ser guardado en
la memoria principal de la computadora. Hacer esto implica que no se podrán usar los
métodos de ordenación interna y se requerirán otros métodos.

Método de mezcla directa


Es el método más utilizado por su fácil comprensión y consiste en realizar una partición y
luego una fusión, que producirán secuencias ordenadas de longitud cada vez mayor. El
proceso se repite hasta que la longitud sea: Parte entera ((n+1) / 2)

También podría gustarte