Tema 3. Estructura de datos y algoritmos Flashcards

(32 cards)

1
Q

¿En qué consiste un Max Heap

A

CADA NODO siempre es más grande que los que tiene debajo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿A qué TAD pertenecen las primitivas Push y Pop?

A

A una pila (stack)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

¿En qué consiste una colisión en una tabla Hash?

A

Una colisión se da cuando aplicando el algoritmo hash a las distintas keys, dan el ismo resultado en el índice de la tabla

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Definición de grado de un nodo y orden del arbol

A

Grado de un NODO: Número de hijos EN ESE MOMENTO

Orden del ÁRBOL: Número de hijos MÁXIMO que puede tener

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Definición de altura y profundidad de un nodo

A

Altura: El número de aristas desde ese nodo hasta el nodo hoja más alejado (trayectoria más larga)No

Profundidad: El número de aristas desde ese nodo a la raíz

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

¿En qué consiste un árbol AVL?

A

Es una implementación de árbol binario de búsqueda que mantiene automáticamente un factor de equilibrio entre -1, 0 o +1 (autobalanceable)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

¿Para qué sirve el algoritmo de Kruskal?

A

Árbol de recubrimiento que conecta todos los nodos con coste dlobal/suma mínimo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿En qué consiste el grado de un vértice en un grafo?

A

Número de aristas incidentes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Para qué sirve el algoritmo de Dijkstra?

A

Para calcular el camino mínimo desde un nodo a todos los otros nodos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Cuáles son las características de los árboles B+?

A

Nodos internos solo contienen claves y punteros, hojas están enlazadas entre sí.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Cuáles son las características de los árboles B*?

A

Garantiza una densidad de ocupación de 2/3 (árbol B sólo 1/2).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

¿Para qué sirve el algoritmo FLOYD-WARSHALL.?

A

En un grafo ponderado, encuentra caminos más cortos entre todos los nodos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

¿Qué es un algoritmo?

A

Conjunto de reglas que, aplicadas sistemáticamente a un conjunto de datos apropiados de entrada, resuelven un problema en un NÚMERO FINITO de pasos elementales. UN ALGORITME DEBE TERMINAR Y TENER UNA ENTRADA Y SALIDA

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Algoritmo de Burbuja

A

O(n2). Va desplazando al final del array el nº más grande a base de comparaciones e intercambios entre elementos adyacentes. Mejor caso O(n) si la lista ya está ordenada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Algoritmo de Inserción directa

A

O(n2). Busca donde insertar el dato y desplaza los siguientes elementos. Si hace una búsqueda binaria: Inserción binaria.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Algoritmo de Mergesort

A

O(n log (n)). Es recursivo. Divide la lista en sublistas hasta llegar al caso más sencillo para comparar. Luego mezcla las sublistas para obtener una lista ordenada.

17
Q

Algoritmo de Quicksort

A

O(n log (n)). Es recursivo. Elegimos un pivote. En la primera pasada, los menores del pivote se colocan a la izquierda y los mayores a la derecha. Segunda pasada: hacemos 2 llamadas de T(n/2). Peor caso O(n2) si el pivote es el menor o el mayor de los valores.

18
Q

Algoritmo de Heapsort (o Montículos)

A

O(n log (n)). Se meten los datos en un montículo Max-Heap y luego se realizan N llamadas a EliminarMax().

19
Q

Algoritmo de Radix Sort

A

O(n K). Se basa en el número de cifras de los números a ordenar. LSD usa el dígito menos significativo y MSD el más significativo.

20
Q

Algoritmo de Selección

A

siempre O(n2). Primero busca el mínimo y lo coloca el primero. Luego busca el siguiente mínimo y lo coloca después

21
Q

Algoritmo de Bucket Sort (o BinShort):

A

O(n). Distribuye los números en casilleros y dentro de cada casillero aplicas el criterio que sea

22
Q

¿Qué es y en qué consiste la técnica de Backtracking?

A

Técnica de diseño de algoritmos basada en explorar todo el “árbol” de posibles soluciones (prueba y error): Alias: Fuerza bruta

Nota: Una posible optimización para no “repetir” cálculos sería Ramificación y Poda

23
Q

¿Qué requisito tiene el algoritmo de la búsqueda binaria y qué complejidad computacional tiene?

A

Requisitos: Que los datos estén ordenados (array, árbol…)

Complejidad: O(log n)

24
Q

Ordene de más eficiente a menos estas complejidades temporales: n! , nlogn , n^2 , 2^n

A

nlogn , n^2 , 2^n , n!

25
¿En qué consiste cada iteración del algoritmo Radix-sort?
En distribuir en las colas/urnas los números según un determinado dígito (unidades, decenas, centenas...) NOTA: Necesitamos un "espacio" adicional -> Complejidad espacial
26
¿Qué es la complejidad espacial?
Representa la capacidad de espacio adicional (a los datos de entrada) que necesita el algoritmo
27
De una definición de la propiedad "estabilidad" en los algoritmos de ordenación
Mantiene el orden relativo original para claves iguales Ejemplo: Entrada: 4,2,1,0,2,3 Salida: 0,1,2,2,3,4 Pero esos 2 están en el mismo orden en la entrada que la salida
28
¿En qué consiste el algoritmo de inserción binaria?
En el algoritmo de inserción, busca de forma binaria donde insertar el dato dentro de la parte ya ordenada
29
El algoritmo de burbuja (Bubblesort), ¿presenta siempre complejidad O(n^2)
No, si está ordenado es O(n)
30
¿Qué requisito necesita cualquier función recursiva
a) Una condición de parada (Caso BASE o trivial) b) Tiene que llamarse a sí misma
31
¿Cómo explicaría el mecanismo que se produce en una llamada a una función?
Se da un cambio de contexto
32
Diferencia entre Procedimiento y Función
Procedimiento tiene parámetros de entrada Función tiene parámetros de entrada y salida