B2 - T3 Tipos abstractos y estructuras de datos. Organizaciones de ficheros.Algoritmos. Organización de ficheros Flashcards

(212 cards)

1
Q

Cual es la politica de acceso de una pila? (stack)

A

LIFO - Last in, first out

en las pilas, vamos ‘amontonando’ los datos, por tanto los ultimos que metemos, son los primeros que sacamos, ya que vamos ‘vaciando’ el montón

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

Como se almacenan los datos en una tabla hash?

A

Almacena pares de clave-valor

notas tabla hash: La tabla de Hash guarda la información en elementos que se le conocen como “slots” o “buckets” . Cada slot puede tener varias implementaciones, aunque la más común es una lista enlazada

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

Si tenemos un arbol con este aspecto… cual es el grado del nodo 50?

     50
/              \ 30              70 / \               / \ 20 40     60  80
A

2

el grado es el numero de hijos que tenemos

Nota: nivel 0 (soy la raíz) grado 2 (tengo dos hijos)

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

Si tenemos un arbol con este aspecto… cual es el grado del nodo 30?

     50
/              \ 30              70 / \               / \ 20 40     60  80
A

2
el grado es el numero de hijos que tenemos

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

Si tenemos un arbol con este aspecto… cual es el nivel de 50?

     50
/              \ 30              70 / \               / \ 20 40     60  80
A

0

El nivel de un nodo es la distancia desde la raíz al nodo (similar a la profundidad).

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

Si tenemos un arbol con este aspecto… cual es el nivel de 70?

     50
/              \ 30              70 / \               / \ 20 40     60  80
A

1

El nivel de un nodo es la distancia desde la raíz al nodo (similar a la profundidad).

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

Si tenemos un arbol con este aspecto… cual es el nivel de 60?

     50
/              \ 30              70 / \               / \ 20 40     60  80
A

2

El nivel de un nodo es la distancia desde la raíz al nodo (similar a la profundidad).

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

Si tenemos un arbol con este aspecto… cual es la profundidad de 40?

     50
   /     \
30      70

/ \       / \

20 40 60 80

A

2

La profundidad de un nodo es la longitud del camino desde la raíz hasta ese nodo.

PROFUNDIDAD = NIVEL

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

Que es el orden de un nodo?

A

El orden de un árbol es el número máximo de hijos que puede tener un nodo.

Para un árbol binario, el orden es 2.

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

Dado el siguiente arbol… cual seria la ruta si hacemos un PREORDEN?

                      F
              /              \
             B              G
          /      \               \
       A        D               i 
              /      \             \
             C       E            H
A

F-B-A-D-C-E-G-I-H

(RID) > raiz, izquierda, derecha

nota: (raiz, izquierda, derecha) Vamos desplazando la R, fijarse, empezando por PREORDEN (Rid), luego INORDEN (iRd), luego POSTORDEN (idR)

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

Dado el siguiente arbol… cual seria la ruta si hacemos un INORDEN?

                      F
              /              \
             B              G
          /      \               \
       A        D               i 
              /      \             \
             C       E            H
A

A-B-C-D-E-F-G-I-H

(IRD) > izquierda, raiz, derecha

nota: (raiz, izquierda, derecha) Vamos desplazando la R, fijarse, empezando por PREORDEN (Rid), luego INORDEN (iRd), luego POSTORDEN (idR)

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

Dado el siguiente arbol… cual seria la ruta si hacemos un POSTORDEN?

                      F
              /              \
             B              G
          /      \               \
       A        D               i 
              /      \             \
             C       E            H
A

A-C-E-D-B-H-I-G-F

(IDR) > izquierda, derecha, raiz

nota: (raiz, izquierda, derecha) Vamos desplazando la R, fijarse, empezando por PREORDEN (Rid), luego INORDEN (iRd), luego POSTORDEN (idR)

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

Que es un arbol binario?

A

Es un arbol en que cada nodo tiene como máximo dos hijos

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

Que es un arbol Equilibrado ? (auto-balanceable)

A

Aquel en que la diferencia de alturas de los subárboles izquierdo y derecho correspondiente a cualquier nodo del árbol no es superior a 1 (FE es -1, 0, 1)

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

Que es un arbol B? (T)

A

A diferencia de los árboles binarios, los nodos en un árbol B pueden tener más de dos hijo, PERO todos los nodos hoja están al mismo nivel, lo que mantiene el árbol equilibrado

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

de qué orden es este grafo?

A —- B
| |
C —- D

A

Es de orden 4

nota: El orden de un grafo es el número o cantidad de vértices que tenga

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

Si hablamos de algoritmos de ordenación, en que consiste el QuickSort?

A

Algoritmo de ordenación eficiente que utiliza la técnica de divide y vencerás para particionar la lista en sublistas menores y mayores alrededor de un pivote, ordenando recursivamente cada sublista. NO es un algoritmo estable

Pasos:
- selecciona un pivote
- Reordena la lista, de modo que a la izquierda quedan los
menores del pivote y a la derecha los mayores
- Aplica nuevamente Quicksort (pivote + particion) de manera recursiva
- Combinar los resultados

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

Hablando de tecnicas de organizacion de ficheros por parte de los sistemas operativos, nombra algunos algoritmos de planificacion para acceder a los ficheros

A
  • FCFS: first come first serve
  • SSTF: shortest seek time first (selecciona el que la cabeza del disco está mas cerca, osea el que va a tardar menos en encontrar)
  • SCAN: la cabeza del disco va a un lado y cuando llega al final vuelve. va haciendo barridos
  • C-SCAN: igual que scan pero la aguja no vuelve sino que va dando vueltas

(tambien está el look y el c-look)

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

Recorrido IN ORDEN de este arbol

                     M
              /              \
             L              Q
          /      \               \
       K        N               R 
              /      \             \
             O       P            S
A

K, L, O, N, P, M, Q, R, S

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

Que es un monticulo (heap) ?

A

Un montículo (heap) es una estructura de datos especializada que se utiliza para gestionar un conjunto de elementos de manera que el más grande (o más pequeño, dependiendo del tipo de montículo) siempre esté accesible rápidamente.

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

Que diferencia hay entre los recorridos preorden, inorden, y postorden ?

A

1) Preorder:

Visita el nodo raíz primero
Luego recorre el subárbol izquierdo
Finalmente, recorre el subárbol derecho

Orden: Raíz, Izquierda, Derecha

Ejemplo: Dado el árbol [A, B, D, E, C, F], el recorrido preorden sería A, B, D, E, C, F

2) Inorder

Recorre el subárbol izquierdo primero
Luego visita el nodo raíz
Finalmente, recorre el subárbol derecho

Orden: Izquierda, Raíz, Derecha

Ejemplo: Dado el árbol [D, B, E, A, F, C], el recorrido inorden sería D, B, E, A, F, C

3) Postorden (Postorder):

Recorre el subárbol izquierdo primero
Luego recorre el subárbol derecho
Finalmente, visita el nodo raíz

Orden: Izquierda, Derecha, Raíz

Ejemplo: Dado el árbol [D, E, B, F, C, A], el recorrido postorden sería D, E, B, F, C, A

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

En relación con los algoritmos de búsqueda. ¿Qué es un árbol recubridor mínimo?

A

Es un subconjunto de las aristas que conecta todos los vértices sin ciclos y con el costo total más bajo posible

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

En relación con los algoritmos de búsqueda. ¿Qué es un camino mínimo entre dos vértices en un árbol ponderado?

A

La ruta de menor coste entre dos vértices específicos

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

En relación con los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo de PRIM? (T)

A

Para encontrar un árbol recubridor mínimo en un grafo conexo, no dirigido y cuyas aristas están etiquetadas

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
¿Cómo se llama el algoritmo de búsqueda de la teoría de los grafos para encontrar un **árbol recubridor mínimo en un grafo conexo, no dirigido y cuyas aristas están etiquetadas**? (T)
Algoritmo de **PRIM**
26
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo de búsqueda de KRUSKAL?
Para encontrar un **árbol recubridor mínimo en un grafo conexo y ponderado**. Es decir, busca un subconjunto de aristas que, formando un árbol, incluyen todos los vértices y donde el valor de la suma de todas las aristas del árbol es el mínimo
27
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos para encontrar un **árbol recubridor mínimo en un grafo conexo y ponderado**?
Algoritmo de **KRUSKAL**
28
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo DIJKSTRA?
El algoritmo de Dijkstra, también llamado algoritmo de caminos mínimos, es un algoritmo para la determinación del **camino más corto dado un vértice origen al resto de los vértices en un grafo con pesos en cada arista**. No admite pesos negativos.
29
¿Cómo se llama el algoritmo de la teoría de grafos que determina el **camino más corto dado un vértice origen al resto de los vértices en un grafo con pesos en cada arista**?
Algoritmo de **Dijkstra**
30
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo de BELLMAN-FORD? (T)
Determina el **camino más corto desde un único origen en un grafo dirigido o no dirigido. Admite que alguna de las aristas sea negativa**
31
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que determina el **camino más corto desde un único origen en un grafo dirigido o no dirigido. Admite que alguna de las aristas sea negativa**?
Algoritmo de **BELLMAN-FORD**
32
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo **FLOYD-WARSHALL**? (T)
Determina el **camino mínimo en grafos dirigidos ponderados. Encuentra el camino entre todos los pares de vértices en una única ejecución**
33
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que determina el camino mínimo en grafos dirigidos ponderados en una única ejecución?
Algoritmo de **FLOYD-WARSHALL**
34
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el Algoritmo A*? (T)
Encuentra, siempre y cuando se cumplan unas determinadas condiciones, el **camino de menor coste entre un nodo origen y uno objetivo**
35
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que encuentra, siempre y cuando se cumplan unas determinadas condiciones, el camino de menor coste entre un nodo origen y uno objetivo?
Algoritmo A*
36
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo JOHNSON?
Encuentra el **camino más corto entre todos los pares de vértices de un grafo dirigido disperso**
37
¿Cómo se llama el algoritmo de búsqueda, según la teoría de grafos, que encuentra el camino más corto entre todos los pares de vértices de un grafo dirigido disperso?
Algoritmo de **JOHNSON**
38
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo FORD-FULKERSON? (T)
Para encontrar el flujo máximo en una red de flujo
39
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que sirve para encontrar el flujo máximo en una red de flujo? (T)
Algoritmo de **FORD-FULKERSON**
40
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo TARJAN?
Para encontrar componentes fuertemente conexos en un grafo dirigido
41
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que sirve para encontrar componentes fuertemente conexos en un grafo dirigido?
Algoritmo de **TARJAN**
42
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo VITERBI? (T)
Permite hallar la secuencia más probable de estados ocultos
43
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que permite hallar la secuencia más probable de estados ocultos? (T)
Algoritmo de **VITERBI**
44
Nombra algoritmos de búsqueda de la teoría de grafos
PRIM KRUSKAL DIJKSTRA BELLMAN-FORD FLOYD-WARSHALL Algoritmo A* JOHNSON FORD-FULKERSON TARJAN VITERBI
45
Algoritmos de ordenación, nombra alguno
Burbuja Quick Sort Selection HeapSort Inserción ShellSort Merge sorts Bucket sort o Bin Sort Radix Sort
46
¿Cómo funciona el algoritmo de ordenación Burbuja o Bubble Sort?
Algoritmo natural que recorre repetidamente la lista, comparando pares de elementos adyacentes y los intercambia si están en el orden incorrecto
47
¿En qué consiste el algoritmo de ordenación de Inserción? (T)
Comienza con una lista vacía y toma elementos de la lista original uno por uno. Para cada nuevo elemento, encuentra su posición correcta en la lista ordenada y lo inserta allí, desplazando los elementos más grandes si es necesario
48
¿En qué consiste el algoritmo de ordenación Shell o ShellSort?
Permite intercambiar elementos que están lejos unos de otros para reducir la cantidad de desplazamientos necesarios para ordenar la lista. Algoritmo estable
49
¿En qué consiste el algoritmo de ordenación MergeSort?
Algoritmo de ordenación eficiente que también utiliza la **técnica de divide y vencerás**. Divide la lista en mitades, ordena cada mitad y luego las combina para formar una lista ordenada. Funcionamiento: 1. División 2. Recursión 3. Combinación (Merge)
50
¿En qué consiste el algoritmo de ordenación HeapSort o Montículos?
Funcionamiento: 1. Construcción de Montículos: Se reorganiza el array para que cumpla con las propiedades del montículo (máximo o mínimo) 2. Se aplica el proceso de **heapify** para restaurar las propiedades del montículo en la raíz. Este proceso se repite hasta que todos los elementos estén ordenados
51
¿En qué consiste el algoritmo de ordenación de Selección? (T)
**Seleccionar** el número más pequeño Funcionamiento: 1. Buscar el mínimo: Encuentra el elemento más pequeño en la parte desordenada del array. 2. Intercambiar: Intercambia este elemento con el primer elemento de la parte desordenada. 3. Repetir el algoritmo
52
¿En qué consiste el algoritmo de ordenación RadixSort? (T)
Funcionamiento: 1. Los elementos se agrupan en "bandejas" (buckets), seleccionando con qué dígito empezar a ordenar 2. Se selecciona el elemento menos significativo y se le añade a su bucket correspondiente 3. Sacar elementos de las cubetas en orden 4. Se selecciona el segundo elemento menos significativo y se le añade a su bucket correspondiente 5. Sacar elementos de las cubetas en orden y ya queda ordenado
53
¿En qué consiste el algoritmo de ordenación BucketSort?
Funcionamiento: 1. Metemos los números en cubetas o buckets con el reparto que consideremos, por ejemplo en bloques de 10 números. 2. Ordenamos cada cubeta o bucket con el algoritmo que consideremos 3. Extraemos los números en orden
54
Tipos de grafos
**Dirigidos ó digrafo**: aquel en el que todas sus aristas tienen sentido o dirección **No dirigidos**: las aristas representan relaciones simétricas y no tienen un sentido definido. Todas sus aristas son bidireccionales. **Conexo**: es posible llegar desde cualquier nodo del grafo a cualquier otro nodo a través de una secuencia de aristas (conexiones) sin importar cuán larga sea esa secuencia. **Multigrafo**: más de una arista entre vértices **Etiquetado/ponderado**: las aristas tienen un valor o peso asociado **Completo**: cada par de vértices está conectado por una arista.
54
¿Cuál de las siguientes opciones NO es una característica de la asignación de espacio de almacenamiento enlazada? a) Los bloques de un fichero son nodos de una lista enlazada. b) Genera fragmentación externa. c) Ineficiencia con el acceso directo. d) Cada bloque contiene un indicador del siguiente bloque con datos del fichero.
B Genera fragmentación externa. La asignación enlazada genera fragmentación interna, no externa
55
¿Qué formato de archivo de imagen soporta animaciones y tiene una paleta de colores limitada a 256? a) .jpg b) .png c) .gif d) .bmp
C gif
56
¿Cuál de las siguientes afirmaciones sobre los árboles B es FALSA? a) Son árboles autoequilibrados. b) Los nodos pueden tener más de dos hijos. c) Se utilizan comúnmente en sistemas de bases de datos y sistemas de archivos. d) La búsqueda de elementos en un árbol B tiene una complejidad temporal de O(n) en el peor de los casos.
D La búsqueda de elementos en un árbol B tiene una complejidad temporal de O(n) en el peor de los casos. nota: La búsqueda, inserción y borrado en un árbol B tienen una complejidad temporal de O(log(n))
57
En un arbol, que es .... - nodo hoja - grado - orden - nivel - profundidad - altura de un nodo - anchura
- nodo hoja: nodo que no tiene descendientes - grado: numero de hijos - orden. numero maximo teorico de hijos posibles - nivel: num de ramas que hay que recorrer hasta raiz - profundidad: igual que nivel - altura de un nodo: numero total de nodos hijos - anchura: el ancho del arbol nota: remember que el nivel empieza por 0
58
Dado este arbol... dime del nodo 4 su nivel, profundidad, altura y anchura 1 / \ 2 3 / 4
- Nivel y profundidad es 2 (0,1, 2) - Altura es 0 (es el ultimo) - Anchura es 1 . La anchura del árbol sería 2
59
Dado este arbol... dime del nodo 1 su nivel, profundidad , altura y anchura 1 / \ 2 3 / 4
- Nivel y profundidad es 0 - Altura es 2 - Anchura es 1 (la anchura del árbol sería 2)
60
¿Cuál de las siguientes NO es una implementación de un Array Asociativo? a) Montículo b) Lista enlazada c) Tabla Hash d) Arbol
D Arbol **Explicación:** Un Array Asociativo, también conocido como diccionario o mapa, es una estructura de datos que asocia claves únicas a valores. Las implementaciones comunes incluyen listas enlazadas, tablas hash y montículos. Los árboles, si bien son estructuras de datos útiles, no se utilizan para implementar Arrays Asociativos.
61
Cuál de los siguientes algoritmos de ordenación tiene la mejor complejidad temporal en el caso promedio? a) Merge Sort b) Bubble Sort c) Insertion Sort d) Selection Sort
A Merge Sort **Explicación:** La complejidad temporal en el caso promedio de Merge Sort es O(n log n), que es mejor que la complejidad de Bubble Sort, Insertion Sort y Selection Sort, que es O(n^2) en el caso promedio.
62
¿Cuál de los siguientes NO es un tipo de grafo? a) Dirigido b) No dirigido c) Ponderado d) Ordenado
D Ordenado **Explicación:** Los grafos se clasifican en dirigidos, no dirigidos y ponderados. Un grafo dirigido tiene aristas con una dirección específica, mientras que un grafo no dirigido tiene aristas sin dirección. Un grafo ponderado tiene pesos asociados a sus aristas. El término "ordenado" no se utiliza para clasificar grafos.
63
Nombra 3 algoritmos de búsqueda en grafos (T)
Prim (ARM), Kruskal (ARM), Dijkstra (CM)
64
¿En qué consiste el algoritmo de BELLMAN-FORD según los algoritmos de búsqueda de la teoría de grafos? a) Encuentra el camino más largo en un grafo dirigido. b) Encuentra el camino más corto desde un único origen en un grafo dirigido, permitiendo pesos negativos. c) Encuentra el camino más corto entre todos los pares de nodos en un grafo dirigido. d) Encuentra el camino más corto en un grafo no dirigido con todas las aristas de peso positivo.
B Encuentra el camino más corto desde un único origen en un grafo dirigido, permitiendo pesos negativos.
65
¿Cómo funciona el algoritmo de ordenación Burbuja (Bubble Sort)? A) Recurre a un árbol binario para ordenar los elementos mediante intercambios entre los nodos. B) Utiliza una pila para comparar y ordenar elementos en pares consecutivos. C) Compara y, si es necesario, intercambia elementos adyacentes repetidamente hasta que la lista esté ordenada. D) Implementa una búsqueda binaria para ordenar elementos a través de divisiones recursivas.
C Compara y, si es necesario, intercambia elementos adyacentes repetidamente hasta que la lista esté ordenada.
66
En el contexto de los algoritmos de búsqueda, ¿qué es un árbol recubridor mínimo (MST, por sus siglas en inglés)? A) Un árbol binario que contiene todos los nodos y minimiza la profundidad del árbol. B) Un subgrafo cíclico que incluye todos los vértices y tiene el menor peso total posible. C) Un árbol que conecta todos los vértices de un grafo sin ciclos y con el menor peso total posible. D) Un grafo no dirigido que tiene el máximo número de aristas posibles sin formar ciclos.
C Un árbol que conecta todos los vértices de un grafo sin ciclos y con el menor peso total posible. Árbol recubridor mínimo (MST): Es un subgrafo del grafo original que conecta todos los vértices sin formar ciclos y con el menor peso total de las aristas. Es fundamental en diversos problemas de optimización y búsqueda, como la planificación de redes.
67
¿En qué consiste el algoritmo de ordenación HeapSort o Montículos? A) Divide la lista en dos sublistas y las ordena recursivamente. B) Construye un montículo (heap) y extrae el elemento máximo (o mínimo) repetidamente para formar una lista ordenada. C) Utiliza la técnica de "Divide y Vencerás" para ordenar las sublistas de manera independiente. D) Realiza intercambios de elementos adyacentes repetidamente hasta que la lista esté ordenada.
B Construye un montículo (heap) y extrae el elemento máximo (o mínimo) repetidamente para formar una lista ordenada. Algoritmo de ordenación HeapSort (Montículos): Es un algoritmo de ordenación que utiliza una estructura de datos conocida como montículo (heap). Primero, se construye un max-heap o min-heap a partir de los datos de entrada. Luego, se extrae repetidamente el elemento máximo (para max-heap) o mínimo (para min-heap) y se coloca en la posición adecuada de la lista ordenada, reduciendo el tamaño del heap en cada paso.
68
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo Viterbi? A) Determina el camino más corto en grafos dirigidos ponderados utilizando una pila. B) Calcula el árbol recubridor mínimo en un grafo no dirigido. C) Encuentra la secuencia más probable de estados ocultos en un modelo de Markov oculto. D) Resuelve el problema del flujo máximo en una red de flujo.
C Encuentra la secuencia más probable de estados ocultos en un modelo de Markov oculto. Algoritmo Viterbi: Es un algoritmo dinámico que se utiliza para encontrar la secuencia más probable de estados ocultos en un modelo de Markov oculto (HMM, por sus siglas en inglés). Es ampliamente utilizado en áreas como el reconocimiento de voz, la biología computacional y la corrección de errores en códigos.
69
¿Qué algoritmo de planificación de disco puede causar "inanición" de solicitudes, especialmente aquellas ubicadas en los extremos del disco? a) SSTF (Shortest Seek Time First) b) FCFS (First-Come, First-Served) c) SCAN (Elevator Algorithm) d) C-SCAN (Circular SCAN)
A SSTF (Shortest Seek Time First)
70
¿Cuál es la principal diferencia entre un grafo dirigido y uno no dirigido? (T)
En un grafo dirigido, las aristas tienen dirección; en uno no dirigido, las aristas son bidireccionales
71
¿Qué técnica de gestión de colisiones en tablas hash implica colocar un nuevo elemento en una posición diferente de la tabla si su posición original está ocupada? (T)
Hashing Cerrado
72
¿Cuál de las siguientes opciones NO es un algoritmo de búsqueda en grafos? a) Merge Sort b) DIJKSTRA c) Prim d) Bellman-Ford
A Merge Sort Merge Sort es un algoritmo de ordenación, no de búsqueda en grafos
73
En un árbol binario, ¿qué tipo de recorrido visita primero la raíz, luego el subárbol izquierdo y finalmente el subárbol derecho? a. Preorden (PreOrder) b. Inorden (InOrder) c. Postorden (PostOrder) d. Ninguno de los anteriores
A Preorden (PreOrder)
74
¿Cuál es la complejidad temporal en el peor caso del algoritmo Quicksort?
O(n²)
75
¿Qué estructura de datos utiliza un montículo (heap) para su implementación?
Un array
76
¿Cuál de las siguientes afirmaciones sobre el algoritmo Quick Sort es correcta? a) Quick Sort tiene una complejidad temporal promedio de O(n). b) Quick Sort es un algoritmo de ordenación interna que utiliza el enfoque de divide y vencerás. c) Quick Sort siempre garantiza el mejor caso de complejidad temporal en O(n log n). d) Quick Sort no utiliza un pivote para particionar el array.
B Quick Sort es un algoritmo de ordenación interna que utiliza el enfoque de divide y vencerás.
77
¿Cómo se llama el algoritmo de la teoría de grafos que determina el camino más corto dado un vértice origen al resto de los vértices en un grafo con pesos en cada arista? a) Algoritmo de Prim b) Algoritmo de Floyd-Warshall c) Algoritmo de Bellman-Ford d) Algoritmo de Dijkstra
D Algoritmo de Dijkstra a) Algoritmo de Prim: Este algoritmo se utiliza para encontrar el árbol de expansión mínima en un grafo conexo con pesos. No se centra en encontrar el camino más corto desde un vértice origen al resto de los vértices, sino en conectar todos los vértices del grafo con el costo total mínimo. b) Algoritmo de Floyd-Warshall: Este algoritmo se utiliza para encontrar los caminos más cortos entre todos los pares de vértices en un grafo con pesos. Aunque es muy útil, no se ajusta específicamente a la descripción de encontrar el camino más corto desde un único vértice origen al resto de los vértices. c) Algoritmo de Bellman-Ford: Aunque este algoritmo puede determinar el camino más corto desde un vértice origen al resto de los vértices en un grafo con pesos, también puede manejar grafos con pesos negativos. Sin embargo, dado que la pregunta no menciona específicamente la capacidad de manejar pesos negativos, la respuesta más específica y directa a la pregunta sería el algoritmo de Dijkstra, que es más eficiente en grafos sin pesos negativos. d) Algoritmo de Dijkstra: Este algoritmo es el más adecuado para la descripción dada, ya que se utiliza específicamente para encontrar el camino más corto desde un vértice origen al resto de los vértices en un grafo con pesos no negativos.
78
¿En qué consiste el Algoritmo A* según los algoritmos de búsqueda de la teoría de grafos? a) Utiliza una función heurística para encontrar el camino más corto en un grafo ponderado. b) Encuentra el árbol de expansión mínima en un grafo conexo. c) Calcula el camino más corto entre todos los pares de vértices en un grafo. d) Es un algoritmo específico para grafos no dirigidos sin pesos.
A Utiliza una función heurística para encontrar el camino más corto en un grafo ponderado.
79
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos para encontrar un árbol recubridor mínimo en un grafo conexo y ponderado? a) Algoritmo de Dijkstra b) Algoritmo de Kruskal c) Algoritmo de Bellman-Ford d) Algoritmo A*
B Algoritmo de Kruskal
80
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo Viterbi? a) Encuentra el camino más corto entre dos nodos en un grafo ponderado. b) Resuelve el problema de la alineación de secuencias en bioinformática. c) Encuentra el árbol de expansión mínima en un grafo conexo. d) Determina la secuencia más probable de estados ocultos en un modelo de Markov oculto.
D Determina la secuencia más probable de estados ocultos en un modelo de Markov oculto.
81
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que encuentra, siempre y cuando se cumplan unas determinadas condiciones, el camino de menor coste entre un nodo origen y uno objetivo? a) Algoritmo de Bellman-Ford b) Algoritmo de Dijkstra c) Algoritmo de Prim d) Algoritmo A*
D Algoritmo A* remember.. que se cumplan condiciones
82
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que sirve para encontrar componentes fuertemente conexos en un grafo dirigido? a) Algoritmo de Dijkstra b) Algoritmo de Bellman-Ford c) Algoritmo de Prim d) Algoritmo de Tarjan
D Algoritmo de Tarjan remember: Tarzán se agarra fuertemente a las lianas para no caerse
83
¿En qué consiste el algoritmo de ordenación de Selección? a) Es un algoritmo de ordenación interna que utiliza una función de hash para distribuir elementos en diferentes contenedores. b) Es un algoritmo de ordenación externa que usa archivos en disco para ordenar grandes cantidades de datos. c) Es un algoritmo de ordenación interna que selecciona repetidamente el elemento más pequeño del array no ordenado y lo intercambia con el primer elemento no ordenado. d) Es un algoritmo de ordenación que construye un árbol de búsqueda binaria a partir de los elementos del array.
C Es un algoritmo de ordenación interna que selecciona repetidamente el elemento más pequeño del array no ordenado y lo intercambia con el primer elemento no ordenado.
84
¿Qué es un árbol equilibrado (auto-balanceable)? a) Un árbol en el que todos los nodos tienen el mismo número de hijos. b) Un árbol en el que la altura de los subárboles izquierdo y derecho de cualquier nodo difiere en no más de una unidad. c) Un árbol en el que los nodos hoja están todos en el mismo nivel. d) Un árbol que no necesita operaciones de reequilibrio después de inserciones o eliminaciones de nodos.
B Un árbol en el que la altura de los subárboles izquierdo y derecho de cualquier nodo difiere en no más de una unidad.
85
¿En qué consiste el algoritmo de ordenación Shell o ShellSort? a) Es un algoritmo de ordenación que utiliza una función de hash para distribuir elementos en diferentes contenedores. b) Es un algoritmo de ordenación que clasifica los elementos mediante un procedimiento de mezcla. c) Es un algoritmo de ordenación que compara y ordena elementos distantes y reduce el intervalo de comparación progresivamente. d) Es un algoritmo de ordenación que construye un árbol de búsqueda binaria a partir de los elementos del array.
C Es un algoritmo de ordenación que compara y ordena elementos distantes y reduce el intervalo de comparación progresivamente.
86
En relación con los algoritmos de búsqueda, ¿qué es un camino mínimo entre dos vértices en un árbol ponderado? a) Es el camino más largo posible entre dos vértices. b) Es el camino con la menor cantidad de vértices. c) Es el camino con el menor costo total de las aristas que conectan los vértices. d) Es el camino que pasa por el mayor número de aristas.
C Es el camino con el menor costo total de las aristas que conectan los vértices.
87
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que permite hallar la secuencia más probable de estados ocultos? a) Algoritmo de Dijkstra b) Algoritmo de Kruskal c) Algoritmo de Bellman-Ford d) Algoritmo Viterbi
D Algoritmo Viterbi viterbi, ocultos
88
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que determina el camino más corto desde un único origen en un grafo dirigido o no dirigido. Admite que alguna de las aristas sea negativa? a) Algoritmo de Dijkstra b) Algoritmo de Kruskal c) Algoritmo de Bellman-Ford d) Algoritmo A*
C Algoritmo de Bellman-Ford
89
¿Cómo se almacenan los datos en una tabla hash? a) Los datos se almacenan en una lista enlazada que se recorre de principio a fin. b) Los datos se almacenan en una estructura de árbol binario de búsqueda. c) Los datos se almacenan en una tabla mediante una función de hash que determina el índice en el que se guarda cada elemento. d) Los datos se almacenan en una pila donde el último elemento insertado es el primero en ser eliminado.
C Los datos se almacenan en una tabla mediante una función de hash que determina el índice en el que se guarda cada elemento.
90
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo de Bellman-Ford? a) Encuentra el árbol de expansión mínima en un grafo conexo seleccionando siempre la arista de menor peso que conecta un vértice en el árbol con un vértice fuera de él. b) Encuentra los componentes fuertemente conexos en un grafo dirigido. c) Determina el camino más corto desde un único origen en un grafo dirigido o no dirigido, admitiendo que algunas de las aristas tengan peso negativo. d) Resuelve el problema de la alineación de secuencias en bioinformática.
C Determina el camino más corto desde un único origen en un grafo dirigido o no dirigido, admitiendo que algunas de las aristas tengan peso negativo.
91
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que sirve para encontrar el flujo máximo en una red de flujo? a) Algoritmo de Dijkstra b) Algoritmo de Kruskal c) Algoritmo de Ford-Fulkerson d) Algoritmo de Bellman-Ford
C Algoritmo de Ford-Fulkerson
92
¿En qué consiste el algoritmo de ordenación RadixSort? a) Es un algoritmo de ordenación que compara y ordena elementos distantes y reduce el intervalo de comparación progresivamente. b) Es un algoritmo de ordenación que utiliza una función de hash para distribuir elementos en diferentes contenedores. c) Es un algoritmo de ordenación que clasifica los elementos por sus dígitos, desde el dígito menos significativo hasta el más significativo. d) Es un algoritmo de ordenación que construye un árbol de búsqueda binaria a partir de los elementos del array.
C Es un algoritmo de ordenación que clasifica los elementos por sus dígitos, desde el dígito menos significativo hasta el más significativo.
93
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que determina el camino mínimo en grafos dirigidos ponderados en una única ejecución? a) Algoritmo de Dijkstra b) Algoritmo de Kruskal c) Algoritmo de Bellman-Ford d) Algoritmo de Floyd-Warshall
D Algoritmo de Floyd-Warshall nota: 1 sola ejecucion
94
¿En qué consiste el algoritmo de ordenación HeapSort o Montículos? a) Es un algoritmo de ordenación que utiliza una función de hash para distribuir elementos en diferentes contenedores. b) Es un algoritmo de ordenación que clasifica los elementos mediante un procedimiento de mezcla. c) Es un algoritmo de ordenación que convierte el array en un montón (heap) y luego extrae el elemento máximo (o mínimo) repetidamente para ordenar el array. d) Es un algoritmo de ordenación que compara y ordena elementos distantes y reduce el intervalo de comparación progresivamente.
C Es un algoritmo de ordenación que convierte el array en un montón (heap) y luego extrae el elemento máximo (o mínimo) repetidamente para ordenar el array.
95
¿Para qué sirve la técnica de programación dinámica? a) Para ejecutar programas en paralelo y reducir el tiempo de cómputo en aplicaciones de alta demanda. b) Para almacenar resultados intermedios de subproblemas en una tabla y evitar cálculos redundantes, optimizando así el rendimiento de algoritmos. c) Para desarrollar aplicaciones en tiempo real con baja latencia y alta disponibilidad. d) Para cifrar datos sensibles en aplicaciones de red utilizando claves asimétricas.
B Para almacenar resultados intermedios de subproblemas en una tabla y evitar cálculos redundantes, optimizando así el rendimiento de algoritmos. Breve explicación: La programación dinámica es una técnica de optimización algorítmica que se utiliza para resolver problemas complejos dividiéndolos en subproblemas más simples. Al almacenar los resultados de estos subproblemas en una tabla, se evita recalcular los mismos resultados múltiples veces, mejorando significativamente la eficiencia y el rendimiento del algoritmo. Por qué las otras opciones son incorrectas: a) Para ejecutar programas en paralelo y reducir el tiempo de cómputo en aplicaciones de alta demanda: Esto describe la computación paralela, no la programación dinámica. c) Para desarrollar aplicaciones en tiempo real con baja latencia y alta disponibilidad: Esto se relaciona con el diseño de sistemas en tiempo real, no con la programación dinámica. d) Para cifrar datos sensibles en aplicaciones de red utilizando claves asimétricas: Esto se refiere a la criptografía, no a la programación dinámica.
96
¿Cuál de las siguientes afirmaciones describe correctamente el algoritmo Floyd-Warshall? A) Calcula la distancia mínima entre un solo par de vértices en un grafo. B) Utiliza programación dinámica para encontrar el camino más corto entre todos los pares de vértices en un grafo ponderado. C) Solo funciona con grafos no dirigidos y sin pesos negativos. D) Es un algoritmo de búsqueda en profundidad que explora todos los caminos posibles.
B Utiliza programación dinámica para encontrar el camino más corto entre todos los pares de vértices en un grafo ponderado.
97
¿Cuál de las siguientes afirmaciones describe correctamente el algoritmo de ordenación por selección? A) Ordena los elementos mediante la inserción de cada nuevo elemento en su posición correcta. B) Busca el elemento más grande y lo coloca al final de la lista en cada iteración. C) Encuentra el elemento más pequeño en la lista y lo intercambia con el primer elemento, repitiendo este proceso para los elementos restantes. D) Utiliza un enfoque de divide y vencerás para ordenar los elementos.
C Encuentra el elemento más pequeño en la lista y lo intercambia con el primer elemento, repitiendo este proceso para los elementos restantes.
98
¿Cuál de las siguientes afirmaciones describe correctamente el algoritmo de Prim en la teoría de grafos? A) Encuentra el camino más corto entre dos vértices en un grafo dirigido. B) Utiliza una estrategia codiciosa para construir un árbol de expansión mínima conectando todos los vértices de un grafo no dirigido y ponderado. C) Requiere que el grafo sea dirigido y no puede manejar pesos negativos. D) Se basa en un enfoque de divide y vencerás para dividir el grafo en subgrafos más pequeños.
B Utiliza una estrategia codiciosa para construir un árbol de expansión mínima conectando todos los vértices de un grafo no dirigido y ponderado. El algoritmo de Prim es un método eficiente que busca crear un árbol de expansión mínima (MST) al seleccionar repetidamente la arista de menor peso que conecta un vértice en el árbol en construcción con un vértice fuera del árbol, asegurando que se minimice el peso total del árbol.
99
¿Cuál de las siguientes afirmaciones describe correctamente el algoritmo Viterbi en la teoría de grafos? A) Se utiliza para encontrar el camino más corto entre dos vértices en un grafo no dirigido. B) Es un algoritmo de programación dinámica que determina la secuencia más probable de estados ocultos en un modelo de Markov. C) Calcula la distancia mínima entre todos los pares de vértices en un grafo ponderado. D) Es un algoritmo de búsqueda en profundidad que explora todos los caminos posibles en un grafo.
B Es un algoritmo de programación dinámica que determina la secuencia más probable de estados ocultos en un modelo de Markov. El algoritmo Viterbi se utiliza principalmente en el contexto de modelos ocultos de Markov (HMM), donde busca encontrar la secuencia más probable de estados ocultos dados una serie de observaciones.
100
¿Cuál de las siguientes afirmaciones describe correctamente el algoritmo Bellman-Ford en la teoría de grafos? A) Encuentra el camino más corto en un grafo no dirigido y ponderado sin considerar pesos negativos. B) Utiliza una técnica voraz para seleccionar el nodo de menor peso y relajar las aristas. C) Calcula el camino más corto desde un nodo origen a todos los demás nodos, permitiendo pesos negativos en las aristas. D) Solo funciona en grafos dirigidos y no puede detectar ciclos negativos.
C Calcula el camino más corto desde un nodo origen a todos los demás nodos, permitiendo pesos negativos en las aristas. El algoritmo Bellman-Ford es eficaz para encontrar la ruta más corta en un grafo dirigido y ponderado, incluso cuando hay aristas con pesos negativos, y también puede detectar ciclos negativos en el grafo.
101
¿Cuál es el nombre del algoritmo de búsqueda en la teoría de grafos que se utiliza para encontrar el flujo máximo en una red de flujo? A) Algoritmo de Dijkstra B) Algoritmo de Prim C) Algoritmo de Bellman-Ford D) Algoritmo de Ford-Fulkerson
D Algoritmo de Ford-Fulkerson El algoritmo de Ford-Fulkerson se utiliza para calcular el flujo máximo en una red de flujo, permitiendo determinar la cantidad máxima de flujo que puede transportarse desde un nodo fuente a un nodo sumidero.
102
¿Cómo se llama el algoritmo que encuentra un árbol recubridor mínimo en un grafo conexo, no dirigido y cuyas aristas están etiquetadas? A) Algoritmo de Dijkstra B) Algoritmo de Prim C) Algoritmo de Bellman-Ford D) Algoritmo de Floyd-Warshall
B Algoritmo de Prim
103
¿Cuál es otro algoritmo comúnmente utilizado para encontrar un árbol recubridor mínimo? A) Algoritmo de A* B) Algoritmo de Kruskal C) Algoritmo de Ford-Fulkerson D) Algoritmo de Johnson
B Algoritmo de Kruskal
104
¿Qué estructura de datos es comúnmente utilizada en el algoritmo de Prim para mantener las aristas candidatas? A) Cola de prioridad B) Lista enlazada C) Pila D) Árbol binario
A Cola de prioridad
105
En el algoritmo de Kruskal, ¿qué se utiliza para evitar la formación de ciclos al agregar aristas? A) Un árbol binario B) Un conjunto disjunto C) Una lista de adyacencia D) Una matriz de adyacencia
B Un conjunto disjunto
106
¿Cuál es la principal diferencia entre los algoritmos de Prim y Kruskal? A) Prim comienza con un vértice y expande el árbol, mientras que Kruskal selecciona aristas. B) Kruskal es más rápido que Prim en todos los casos. C) Prim solo funciona en grafos dirigidos. D) Kruskal no garantiza un árbol recubridor mínimo
A Prim comienza con un vértice y expande el árbol, mientras que Kruskal selecciona aristas.
107
¿Qué tipo de grafos pueden ser utilizados con los algoritmos de Prim y Kruskal? A) Solo grafos dirigidos. B) Grafos conexos y no dirigidos con pesos en las aristas. C) Grafos no conexos. D) Grafos bipartitos solamente.
B Grafos conexos y no dirigidos con pesos en las aristas.
108
¿Qué técnica se utiliza para resolver colisiones mediante la aplicación de una segunda función hash? A) Sondeo lineal B) Doble hash C) Encadenamiento D) Rehashing
B Doble hash
109
¿Qué es Radix Sort? A) Un algoritmo de ordenación basado en comparaciones. B) Un algoritmo de ordenación no comparativa que organiza los elementos procesando sus dígitos de forma individual. C) Un método para buscar elementos en una lista. D) Un algoritmo que solo ordena números enteros.
B Un algoritmo de ordenación no comparativa que organiza los elementos procesando sus dígitos de forma individual.
110
¿Qué técnica se utiliza comúnmente como subrutina en Radix Sort para ordenar los dígitos en cada posición? A) Quick Sort B) Merge Sort C) Counting Sort D) Bubble Sort
C Counting Sort
111
¿Qué característica distingue a la Búsqueda en Anchura (BFS) de la Búsqueda en Profundidad (DFS)? a) BFS explora todos los nodos a una distancia dada antes de avanzar, mientras que DFS profundiza en un camino antes de retroceder. b) BFS es más eficiente que DFS en todos los casos. c) DFS no puede encontrar la solución más corta, mientras que BFS siempre lo hace. d) BFS utiliza menos memoria que DFS.
A BFS explora todos los nodos a una distancia dada antes de avanzar, mientras que DFS profundiza en un camino antes de retroceder.
112
Señalar la técnica de compresión con pérdida A) Portable Network Graphics (PNG) B) Lempel-Ziv-Welch (LZW) C) Joint Photographic Experts Group (JPEG) D) Free Lossless Audio Codec (FLAC)
C Joint Photographic Experts Group (JPEG)
113
El algoritmo Aiken utiliza un código de pesos 2421 para representar números binarios VERDADERO O FALSO ?
VERDADERO el código Aiken utiliza un código de pesos 2421, a diferencia del binario clásico que usa 8421.
114
¿En qué áreas se utiliza el algoritmo k-means para la agrupación de datos?
Minería de datos y machine learning
115
: ¿Qué es un LLM en el ambito de la inteligencia artificial ?
Un LLM (Large Language Model) es un modelo de inteligencia artificial entrenado con grandes cantidades de datos textuales para entender y generar lenguaje humano.
116
¿Qué es un SVM en machine learning?
Un SVM es un algoritmo de aprendizaje supervisado que se utiliza para clasificación y regresión, encontrando el hiperplano que mejor separa los datos en diferentes clases. svm = Support Vector Machine, o maquina de vectores de soporte
117
Con respecto a los árboles 2-3-4, señale la respuesta correcta: a) Cumple las propiedades del árbol binario de búsqueda. b) Las hojas pueden estar a distinto nivel. c) Los nodos pueden tener 2, 3 o 4 hijos (2-nodo, 3-nodo o 4-nodo). d) Las reestructuraciones se realizan desde las hojas hacia la raíz.
C Los nodos pueden tener 2, 3 o 4 hijos (2-nodo, 3-nodo o 4-nodo). Explicación: a) Cumple las propiedades del árbol binario de búsqueda. Incorrecto: Un árbol 2-3-4 no es un árbol binario de búsqueda porque sus nodos pueden tener más de dos hijos (hasta cuatro). Sin embargo, cumple una propiedad similar: los valores en los nodos están organizados de manera que permiten búsquedas eficientes. b) Las hojas pueden estar a distinto nivel. Incorrecto: En un árbol 2-3-4, todas las hojas están al mismo nivel. Es una de las propiedades clave que garantizan el equilibrio del árbol. c) Los nodos pueden tener 2, 3 o 4 hijos (2-nodo, 3-nodo o 4-nodo). Correcto: Los nodos en un árbol 2-3-4 pueden tener: 1 clave y 2 hijos (2-nodo), 2 claves y 3 hijos (3-nodo), 3 claves y 4 hijos (4-nodo). d) Las reestructuraciones se realizan desde las hojas hacia la raíz. Incorrecto: En un árbol 2-3-4, las divisiones de nodos (split) pueden propagarse desde las hojas hacia la raíz, pero las reestructuraciones no siempre comienzan desde las hojas. Estas pueden ocurrir en cualquier nivel del árbol según sea necesario para mantener las propiedades del árbol.
118
¿Cuál de las siguientes afirmaciones es verdadera sobre un árbol binario de búsqueda (BST)? a) Todos los nodos tienen exactamente dos hijos. b) Los nodos hoja están siempre al mismo nivel. c) Los valores a la izquierda de un nodo son menores que el nodo y los valores a la derecha son mayores. d) No se permite que los nodos hoja tengan hijos.
C Los valores a la izquierda de un nodo son menores que el nodo y los valores a la derecha son mayores.
119
¿Cuál es la altura de un árbol binario completo de 3 niveles? a) 2 b) 3 c) 4 d) 5
B 3
120
En un árbol AVL, ¿qué significa que el árbol esté balanceado? a) Todos los nodos tienen el mismo número de hijos. b) La diferencia de altura entre los subárboles izquierdo y derecho de cualquier nodo es como máximo 1. c) El número total de nodos en el subárbol izquierdo es igual al número de nodos en el subárbol derecho. d) Las hojas están en el mismo nivel.
B La diferencia de altura entre los subárboles izquierdo y derecho de cualquier nodo es como máximo 1.
121
¿Qué tipo de árbol tiene nodos con un número variable de hijos, que puede ser mayor que dos? a) Árbol binario de búsqueda b) Árbol AVL c) Árbol 2-3-4 d) Árbol binario completo
C Árbol 2-3-4
122
¿Cuál es la principal ventaja de usar un heap binario en lugar de una lista enlazada para implementar una cola de prioridad? a) Menor uso de memoria b) Acceso más rápido al elemento máximo o mínimo c) Inserciones más rápidas d) Estructura más sencilla
B Acceso más rápido al elemento máximo o mínimo
123
Señale la respuesta correcta referente al tipo abstracto de datos (TAD) Cola: a) Basada en el principio LIFO (last-in, first-out). b) Es un tipo especial de lista en la que se pueden insertar y eliminar por cualquier extremo. c) Cada nodo tiene dos enlaces, uno al nodo siguiente, y otro al anterior. d) Se pude implementar usando una estructura dinámica.
D Se pude implementar usando una estructura dinámica.
124
¿Cuál de las siguientes operaciones no es posible en un árbol AVL? a) Inserción b) Eliminación c) Búsqueda d) Inserción múltiple en una única operación
D Inserción múltiple en una única operación
125
¿Qué estructura de datos es la más adecuada para implementar una cola de prioridad? a) Lista enlazada b) Árbol AVL c) Heap binario d) Árbol binario de búsqueda
C Heap binario
126
¿Cuál de las siguientes afirmaciones es verdadera sobre una lista enlazada doble? a) Cada nodo tiene un enlace al siguiente nodo únicamente. b) Los nodos se ordenan por su valor. c) Cada nodo tiene un enlace al nodo siguiente y al nodo anterior. d) Solo permite acceso secuencial.
C Cada nodo tiene un enlace al nodo siguiente y al nodo anterior.
127
¿Qué tipo de recorrido en un árbol binario visita primero la raíz, luego el subárbol izquierdo y finalmente el subárbol derecho? a) Inorden b) Preorden c) Postorden d) Nivel orden
B Preorden
128
En una pila, ¿cómo se llama la operación que añade un elemento a la cima de la pila? a) Push b) Pop c) Peek d) Insert
A Push
129
¿Cuál es la principal característica de una cola doblemente terminada (deque)? a) Permite inserciones y eliminaciones solo en un extremo. b) Permite inserciones en un extremo y eliminaciones en el otro. c) Permite inserciones y eliminaciones en ambos extremos. d) Permite acceso aleatorio a cualquier elemento.
C Permite inserciones y eliminaciones en ambos extremos.
130
¿Qué es un árbol B en términos de estructuras de datos? a) Un árbol binario completo b) Un árbol AVL con balanceo estricto c) Un árbol de búsqueda equilibrado con múltiples claves por nodo d) Un árbol binario de búsqueda con claves duplicadas
C Un árbol de búsqueda equilibrado con múltiples claves por nodo
131
Señale la respuesta INCORRECTA acerca de los tipos abstractos de datos (TAD): a) Es una colección de propiedades y operaciones que se definen mediante una especificación que es independiente de cualquier representación. b) Nos permiten diseñar nuestros propios tipos para encapsular lógica algorítmica y proveer abstracción a las capas de software de más alto nivel. c) Se pueden escribir usando lenguaje natural, usando pseudo-código o incluso algún lenguaje de programación. d) En JAVA, una estructura de datos (interface) debe implementar todas las operaciones definidas en su TAD (class).
D En JAVA, una estructura de datos (interface) debe implementar todas las operaciones definidas en su TAD (class).
132
¿Cuál de las siguientes estructuras de datos es la más adecuada para implementar una pila? a) Lista doblemente enlazada b) Cola c) Lista enlazada simple d) Árbol binario
C Lista enlazada simple
133
¿Qué operación no es válida en una cola? a) Encolar (enqueue) b) Desencolar (dequeue) c) Peek d) Apilar (push)
D Apilar (push)
134
¿Cuál de las siguientes afirmaciones es verdadera acerca de un árbol binario de búsqueda? a) El nodo raíz siempre tiene el valor más pequeño. b) Las hojas están siempre en el mismo nivel. c) Para cada nodo, los valores del subárbol izquierdo son menores y los del subárbol derecho son mayores. d) No puede tener más de dos niveles de profundidad.
C Para cada nodo, los valores del subárbol izquierdo son menores y los del subárbol derecho son mayores.
135
¿Qué tipo de recorrido en un árbol binario visita los nodos en el orden "izquierda, raíz, derecha"? a) Preorden b) Postorden c) Inorden d) Nivel orden
C Inorden
136
¿Cuál de las siguientes afirmaciones es incorrecta acerca de un TAD? a) Permite encapsular datos y operaciones relacionadas. b) Define operaciones específicas independientemente de su implementación. c) Un TAD se implementa siempre como una clase en cualquier lenguaje de programación. d) Facilita la abstracción y modularidad en el diseño de software.
C Un TAD se implementa siempre como una clase en cualquier lenguaje de programación.
137
¿Qué estructura de datos es la más adecuada para implementar un búfer circular? a) Lista enlazada simple b) Lista doblemente enlazada c) Cola circular d) Pila
C Cola circular
138
¿En qué situación es más ventajoso utilizar una tabla hash? a) Cuando se necesita acceso rápido a los elementos en orden. b) Cuando la velocidad de búsqueda es crítica y se conocen pocas colisiones. c) Cuando los elementos se deben procesar en un orden específico. d) Cuando se necesita una estructura de datos dinámica y ordenada.
B Cuando la velocidad de búsqueda es crítica y se conocen pocas colisiones.
139
¿cuál de las siguientes afirmaciones describe correctamente la principal diferencia entre un recorrido preorden y un recorrido inorden en un árbol binario de búsqueda (ABB)? a) En el recorrido preorden, se visita primero el subárbol izquierdo, luego la raíz, y por último el subárbol derecho, mientras que en el inorden se visita la raíz, luego el izquierdo y finalmente el derecho. b) En el recorrido preorden, se visita primero el subárbol derecho, luego la raíz, y por último el subárbol izquierdo, mientras que en el inorden se visita la raíz, luego el izquierdo y finalmente el derecho. c) En el recorrido preorden, se visita la raíz, luego el subárbol izquierdo, y por último el subárbol derecho, mientras que en el inorden se visita el subárbol izquierdo, luego la raíz, y por último el subárbol derecho. d) En el recorrido preorden, se visita primero la raíz, luego el subárbol izquierdo y luego el derecho, mientras que en el recorrido inorden, se visita primero el subárbol izquierdo, luego la raíz y luego el subárbol derecho.
D En el recorrido preorden, se visita primero la raíz, luego el subárbol izquierdo y luego el derecho, mientras que en el recorrido inorden, se visita primero el subárbol izquierdo, luego la raíz y luego el subárbol derecho. El recorrido preorden (RID) visita la raíz, luego el subárbol izquierdo y finalmente el subárbol derecho. El recorrido inorden (IRD) visita primero el subárbol izquierdo, luego la raíz y finalmente el subárbol derecho
140
Señale la respuesta correcta referente al tipo abstracto de datos (TAD) Pila: a) Basada en el principio FIFO (first-in, first-out). b) Se puede implementar usando arrays. c) No se puede implementar usando una estructura dinámica. d) Las operaciones de apilar (push) y desapilar (pop) se realizan en cualquier posición.
B Se puede implementar usando arrays.
141
¿Cuál de las siguientes afirmaciones es correcta sobre el tipo abstracto de datos (TAD) Cola? a) Se basa en el principio LIFO (Last-In, First-Out). b) Las operaciones de encolar (enqueue) y desencolar (dequeue) se realizan en el mismo extremo. c) Se puede implementar usando un array o una lista enlazada. d) El acceso a los elementos en una cola es aleatorio.
C Se puede implementar usando un array o una lista enlazada.
142
¿Qué tipo de estructura de datos es más adecuada para implementar una tabla hash? a) Array estático. b) Lista enlazada. c) Árbol binario de búsqueda. d) Array dinámico con función de dispersión (hashing).
D Array dinámico con función de dispersión (hashing).
143
¿Cuál es la principal diferencia entre una lista enlazada y un array? a) Las listas enlazadas tienen un acceso aleatorio a los elementos. b) Los arrays tienen una capacidad fija, mientras que las listas enlazadas pueden crecer dinámicamente. c) Las listas enlazadas son más rápidas para acceder a un elemento específico que los arrays. d) Los arrays no pueden almacenar datos de diferentes tipos.
B Los arrays tienen una capacidad fija, mientras que las listas enlazadas pueden crecer dinámicamente.
144
¿Cuál de las siguientes estructuras de datos es más adecuada para almacenar elementos en orden y permitir una rápida inserción y eliminación de elementos en cualquier parte de la estructura? a) Array estático. b) Árbol binario de búsqueda (BST). c) Lista enlazada doblemente. d) Cola.
C Lista enlazada doblemente.
145
¿Qué operación es característica de un árbol binario de búsqueda (BST)? a) La inserción de un nuevo nodo siempre se realiza en el nivel más bajo. b) Todos los nodos en el subárbol izquierdo de un nodo son mayores que el nodo. c) El acceso a los nodos sigue un principio LIFO. d) El árbol está completamente equilibrado en todo momento.
B Todos los nodos en el subárbol izquierdo de un nodo son mayores que el nodo.
146
¿Cómo se llama el algoritmo de búsqueda de la teoría de grafos que permite hallar la secuencia más probable de estados ocultos? a) Algoritmo de Dijkstra. b) Algoritmo de Viterbi. c) Algoritmo de Bellman-Ford. d) Algoritmo de Floyd-Warshall.
B Algoritmo de Viterbi.
147
¿En qué consiste el algoritmo de ordenación de Inserción? a) Ordena los elementos comparando el primero con el segundo y eligiendo el menor para colocarlo al principio. b) Toma el siguiente elemento y lo inserta en la posición correcta dentro de los elementos ya ordenados. c) Divide la lista en dos partes y luego las fusiona ordenadamente. d) Selecciona el elemento más grande y lo coloca al final de la lista.
B Toma el siguiente elemento y lo inserta en la posición correcta dentro de los elementos ya ordenados.
148
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el algoritmo FORD-FULKERSON? a) Busca el camino más corto entre dos nodos en un grafo dirigido. b) Encuentra el flujo máximo en un grafo de flujo. c) Calcula la distancia mínima entre todos los pares de nodos en un grafo. d) Encuentra la secuencia más probable de estados ocultos en un grafo.
B Encuentra el flujo máximo en un grafo de flujo.
149
¿Cómo se denomina a un árbol binario en el que los valores del subárbol izquierdo son menores que el nodo y los del subárbol derecho son mayores?
Árbol Binario de Búsqueda (ABB). Un Árbol Binario de Búsqueda (ABB) es un tipo especial de árbol binario que mantiene sus elementos en un orden específico, donde los valores del subárbol izquierdo de un nodo son menores que el valor del nodo, y los valores del subárbol derecho son mayores
150
Definicion de tabla hash
Es una estructura de datos que implementa un TAD, como un diccionario o un mapa, que puede almacenar pares de clave-valor y permite operaciones eficientes de búsqueda
151
¿Qué sentencia NO es correcta al utilizar un Array Asociativo? a) Coste de la búsqueda es constante b) Coste de la búsqueda NO es constante c) En Java se usa Hash Map d) El Hashing puede ser abierto o cerrado
B Coste de la búsqueda NO es constante Explicación de cada opción: a) Coste de la búsqueda es constante: Esta es generalmente una afirmación correcta para arrays asociativos, especialmente en el caso de tablas hash bien diseñadas. c) En Java se usa Hash Map: Correcto, en Java, HashMap es una implementación común de un array asociativo. d) El Hashing puede ser abierto o cerrado: Correcto, el hashing puede ser abierto (separación encadenada) o cerrado (dirección abierta).
152
¿Qué tipo de algoritmo se llama a sí mismo durante su ejecución? A) Algoritmo iterativo B) Algoritmo secuencial C) Algoritmo recursivo D) Algoritmo paralelo
C Algoritmo recursivo
153
¿Cuál seria una característica de una estructura de datos basada en una Pila? A) Organización en base a primero en entrar, primero en salir (FIFO) B) Organización en base a ultimo en entrar, primero en salir (LIFO) C) Organización en base a filas y columnas D) Organización en base a pares claves-valor
B Organización en base a ultimo en entrar, primero en salir (LIFO)
154
¿Cuál de los siguientes NO corresponde a un formato de archivo comprimido? A) RAR B) TAR C) ZAR D) ZIP
C ZAR
155
¿Cuál de los siguientes algoritmos es un algoritmo de búsqueda en grafos? A) Quicksort B) DFS C) Mergesort D) Burbuja
B DFS
156
¿Cuál de los siguientes algoritmos de ordenación tiene una complejidad definida por O (n log n)? a) Bubblesort. b) Binsort. c) Mergesort. d) Insertion sort.
C Mergesort Mergesort es un algoritmo de ordenación que divide la lista en dos mitades, las ordena de forma recursiva y luego combina las dos mitades ordenadas. Este algoritmo tiene una complejidad de tiempo en el peor caso de O(n log n), lo que lo hace muy eficiente para grandes conjuntos de datos. Revisemos las otras opciones: a) Bubblesort: Tiene una complejidad de tiempo en el peor caso de O(n²). b) Binsort: También conocido como Bucket Sort, tiene una complejidad de tiempo de O(n) en el mejor de los casos, pero depende de la distribución de los datos. d) Insertion sort: Tiene una complejidad de tiempo en el peor caso de O(n²).
157
Recorrer un árbol binario perfecto mediante INORDEN... a) Implica recorrerlo por amplitud. b) Implica recorrerlo comenzando por la rama izquierda, recorriendo ésta en INORDEN, luego la rama derecha, recorriendo ésta por INORDEN, y acabar por la raíz. c) Implica recorrerlo por profundidad. d) Al ser un árbol binario perfecto, el resultado de recorrerlo por INORDEN es el mismo que otros métodos de recorrido por amplitud, como Djikstra o Rijndael.
C Implica recorrerlo por profundidad. El recorrido inorden de un árbol binario perfecto es una técnica de recorrido en profundidad. En un recorrido inorden, se visitan los nodos en el siguiente orden: Recorre el subárbol izquierdo en inorden. Visita la raíz. Recorre el subárbol derecho en inorden. Esto implica que comenzamos por la rama izquierda, visitamos la raíz y luego seguimos por la rama derecha. Sin embargo, la opción c se refiere específicamente al tipo de recorrido, que es en profundidad, y no se mezcla con detalles adicionales que puedan llevar a confusión como en la opción b. Las otras opciones no describen correctamente el recorrido inorden: a) Implica recorrerlo por amplitud.: El recorrido por amplitud es otro tipo de recorrido que visita los nodos nivel por nivel y no es lo mismo que inorden. b) Implica recorrerlo comenzando por la rama izquierda, recorriendo ésta en INORDEN, luego la rama derecha, recorriendo ésta por INORDEN, y acabar por la raíz.: Esto mezcla términos y procesos de manera incorrecta. d) Al ser un árbol binario perfecto, el resultado de recorrerlo por INORDEN es el mismo que otros métodos de recorrido por amplitud, como Djikstra o Rijndael.: Los algoritmos de Dijkstra y Rijndael no tienen relación con el recorrido inorden de un árbol binario.
158
Que es un algortimo ?
Es un conjunto de instrucciones paso a paso para resolver un problema especifico
159
El máximo de los niveles de todos los elementos de un árbol menos uno, se dice que es su: a) Longitud de camino externo. b) Grado. c) Altura. d) Longitud de camino interno.
C Altura nota: el grado es otra cosa. Grado de un Nodo: Es el número de hijos directos que tiene ese nodo. Grado de un Árbol: Es el grado máximo de todos los nodos del árbol. Si un nodo tiene tres hijos, su grado es 3. Si el nodo con más hijos en un árbol tiene 4 hijos, entonces el grado del árbol es 4.
160
¿Cuál de las siguientes afirmaciones describe mejor la relación entre un algoritmo, la complejidad temporal y el microprocesador? A) El algoritmo determina la velocidad del microprocesador mediante instrucciones binarias. B) La complejidad temporal mide el tiempo exacto que tarda un microprocesador en ejecutar un programa. C) La eficiencia de un algoritmo, medida por su complejidad temporal, afecta al tiempo que el microprocesador tarda en resolver un problema. D) El microprocesador reduce automáticamente la complejidad temporal de cualquier algoritmo.
C La eficiencia de un algoritmo, medida por su complejidad temporal, afecta al tiempo que el microprocesador tarda en resolver un problema. La complejidad temporal indica cuántos pasos computacionales necesita un algoritmo en función del tamaño de la entrada. Aunque el microprocesador ejecuta las instrucciones, la eficiencia del algoritmo (su complejidad) es clave para determinar el tiempo de ejecución.
161
¿En qué consiste la tecnica de Backtracking? a) Es una técnica de programación que resuelve problemas creando un grafo dirigido acíclico para explorar todas las posibles soluciones. b) Es un método de resolución de problemas que construye soluciones de manera incremental y retrocede cuando detecta que no puede completar una solución válida c) Es una técnica utilizada únicamente para problemas de optimización matemática, basada en el cálculo de derivadas parciales d) Es un enfoque de programación que divide un problema en subproblemas independientes y los resuelve en paralelo para optimizar el tiempo de ejecución.
B Es un método de resolución de problemas que construye soluciones de manera incremental y retrocede cuando detecta que no puede completar una solución válida
162
¿Qué es una pila? a) Una estructura de datos que sigue el principio LIFO (Último en Entrar, Primero en Salir). b) Una estructura de datos que sigue el principio FIFO (Primero en Entrar, Primero en Salir). c) Una estructura de datos usada para ordenar elementos. d) Una estructura de datos usada para buscar elementos.
A Una estructura de datos que sigue el principio LIFO (Último en Entrar, Primero en Salir). Una pila opera bajo LIFO, donde el último elemento añadido es el primero en ser removido, con operaciones como push y pop.
163
¿Cuál de las siguientes no es un tipo de lista enlazada? a) Lista enlazada simple. b) Lista enlazada doble. c) Lista enlazada circular. d) Lista enlazada binaria.
D Lista enlazada binaria. La lista enlazada binaria no es un tipo estándar; las listas enlazadas típicas son simples (un puntero por nodo), dobles (dos punteros por nodo) o circulares (el último nodo apunta al primero).
164
En tablas hash, ¿qué es una colisión? a) Cuando dos claves diferentes generan el mismo índice. b) Cuando una clave no se encuentra en la tabla. c) Cuando la función hash devuelve un valor negativo. d) Cuando la tabla está llena y no se pueden añadir más elementos.
A Cuando dos claves diferentes generan el mismo índice.
165
¿Cuál es la complejidad temporal para operaciones de búsqueda en un árbol de búsqueda binario balanceado? a) O(1) b) O(log n) c) O(n) d) O(n log n)
B O(log n)
166
¿Qué algoritmo se usa para encontrar el camino más corto en un grafo con pesos negativos pero sin ciclos negativos? a) Algoritmo de Dijkstra b) Algoritmo de Bellman-Ford c) Algoritmo de Floyd-Warshall d) Algoritmo A*
B Algoritmo de Bellman-Ford
167
¿Cuál es la complejidad temporal de bubble sort en el peor caso?
O(n²)
168
¿Qué significa FIFO en colas?
Primero en Entrar, Primero en Salir
169
¿Qué es la raíz de un árbol en informática?
El nodo superior en una estructura de árbol.
170
¿Qué es una función hash?
Una función que convierte datos en un valor o clave de tamaño fijo para recuperación eficiente en tablas hash.
171
¿Cuál es la diferencia entre organización lógica y física de un archivo?
La lógica se refiere a cómo los datos aparecen para usuarios (ej. acceso secuencial), la física a cómo se almacenan en hardware (ej. bloques contiguos).
172
Un árbol de búsqueda binario (BST) con n nodos tiene una altura de floor(log₂(n)) en el mejor caso. VERDADERO O FALSO ?
VERDADERO En un BST perfectamente balanceado, la altura h es aproximadamente log₂(n), específicamente floor(log₂(n)) para ciertos valores de n, asegurando operaciones eficientes O(log n).
173
El algoritmo de Dijkstra puede usarse para encontrar el camino más corto en un grafo con pesos negativos, VERDADERO O FALSO ?
FALSO Dijkstra asume pesos no negativos; para grafos con pesos negativos sin ciclos negativos, se usa Bellman-Ford.
174
¿Qué es un árbol B? A) Una estructura de datos utilizada para almacenar y organizar información en memoria de forma lineal. B) Un tipo de árbol de búsqueda balanceado que mantiene sus nodos ordenados y minimiza el número de accesos a disco. C) Un modelo de inteligencia artificial basado en nodos de decisión para resolver problemas matemáticos. D) Un algoritmo de ordenación rápida utilizado en bases de datos relacionales.
B Un tipo de árbol de búsqueda balanceado que mantiene sus nodos ordenados y minimiza el número de accesos a disco.
175
¿Cuál es el estándar del formato JSON? a) ECMA 404 b) ISO 40500 c) ECMA 272 d) ISO 9075
A ECMA 404
176
Como se llaman los elementos en los que un hash guarda la información ?
slots o buckets
177
Que es la complejidad espacial de un algoritmo ?
La cantidad de memoria que utiliza un algoritmo
178
Que orden tiene un arbol binario ?
2 El orden, es el numero maximo de hijos que puede tener un nodo. Si es binario, por tanto solo puede ser 2
179
Dado este arbol, cual es la anchura del nivel 2 ? 50 / \ 30 70 / \ / \ 20 40 60 80
4
180
Dado este arbol, cual es la anchura del nivel 1 ? 50 / \ 30 70 / \ / \ 20 40 60 80
2 nivel 0 es el 50: anchura 1 (es raiz, claro) nivel 1 es 30 y 70: anchura 2 nivel 2 es 20.40.60 y 80, anchura 4
181
Dado este arbol, cual es la anchura del nivel 0 ? 50 / \ 30 70 / \ / \ 20 40 60 80
1
182
Dado este arbol, cual es la altura de 20? 50 / \ 30 70 / \ / \ 20 40 60 80
0 (20 es un nodo hoja) (la altura es el camino mas largo que podemos hacer)
183
Dado este arbol, cual es la altura de 50 ? 50 / \ 30 70 / \ / \ 20 40 60 80
2 (la altura es el camino mas largo que podemos hacer)
184
Dado este arbol, cual es la profundidad de 80? 50 / \ 30 70 / \ / \ 20 40 60 80
2 (nivel = profundidad)
185
Dado este arbol, cual es la profundidad de 30? 50 / \ 30 70 / \ / \ 20 40 60 80
1 (nivel = profundidad)
186
Dado este arbol, cual es la profundidad de 50? 50 / \ 30 70 / \ / \ 20 40 60 80
0 (nivel = profundidad)
187
Dado este arbol, cual es el nivel de 60? 50 / \ 30 70 / \ / \ 20 40 60 80
2 (nivel = profundidad)
188
Dado este arbol, cual es el nivel de 70? 50 / \ 30 70 / \ / \ 20 40 60 80
1 (nivel = profundidad)
189
Dado este arbol, cual es el nivel de 50? 50 / \ 30 70 / \ / \ 20 40 60 80
0 (nivel = profundidad)
190
Dado este arbol, cual es el grado de 30 ? 50 / \ 30 70 / \ / \ 20 40 60 80
2 El grado es el numero de hijos que tiene (20 y 40)
191
Dado este arbol, cual es el grado de 50 ? 50 / \ 30 70 / \ / \ 20 40 60 80
2 El grado es el numero de hijos que tiene (30 y 70)
192
Si el resultado al recorrer un árbol binario en preorden es {7, 8, 2, 1, 5, 6, 9, 0}, indique cuál es la raíz del árbol: a) 7. b) 1. c) 0. d) 5.
A 7
193
Como funciona el algoritmo de burbuja ? (T)
El algoritmo de burbuja (bubble sort) es un método sencillo de ordenamiento. Se basa en recorrer repetidamente una lista de elementos, comparando elementos adyacentes y cambiándolos de posición si están en el orden incorrecto. Este proceso se repite hasta que la lista esté ordenada. Imagina que tienes una lista de números desordenados. Pasas por la lista varias veces. En cada pasada, comparas pares de números. Si un par está en el orden incorrecto, los intercambias. El número más grande "burbujea" hacia su posición final en cada pasada.
194
El método del intercambio directo o algoritmo de la burbuja es un algoritmo clásico de: a) Ordenación que recorre un vector de elementos e intercambia en cada recorrido un elemento con su sucesor si no está en orden. b) Ordenación que recorre un vector de elementos hasta encontrar el menor de todos e intercambiarlo con el que está en la primera posición. Luego el segundo más pequeño, y así sucesivamente hasta ordenar todo. c) Búsqueda que compara secuencialmente el elemento deseado con los valores contenidos en las posiciones 1..n del vector de elementos hasta que lo encuentre. d) Búsqueda que compara secuencialmente el elemento deseado con los valores contenidos en las posiciones 1..n del vector de elementos hasta que lo encuentre, requisito indispensable es que el vector esté previamente ordenado.
A Ordenación que recorre un vector de elementos e intercambia en cada recorrido un elemento con su sucesor si no está en orden.
195
En que consiste la tecnica del hashing abierto ?
Cuando ocurre una colisión, el nuevo elemento se añade a la lista en la posicion donde ha dado el conflicto
196
Según los algoritmos de búsqueda de la teoría de grafos, ¿en qué consiste el Algoritmo A*? A) Es un algoritmo de búsqueda no informada que expande nodos en orden de profundidad creciente sin usar heurísticas. B) Es un algoritmo de búsqueda informada que expande siempre el nodo con el menor valor de h(n), la heurística al objetivo, ignorando el coste acumulado. C) Es un algoritmo de búsqueda informada que expande nodos en orden creciente de f(n) = g(n) + h(n), donde g(n) es el coste desde el nodo inicial hasta n y h(n) es la heurística estimada desde n al objetivo. D) Es un algoritmo de búsqueda que únicamente minimiza el coste acumulado g(n), sin considerar ninguna heurística al objetivo.
C Es un algoritmo de búsqueda informada que expande nodos en orden creciente de f(n) = g(n) + h(n), donde g(n) es el coste desde el nodo inicial hasta n y h(n) es la heurística estimada desde n al objetivo.
197
Recorre este arbol con postorden 50 / \ 30 70 / \ / \ 20 40 60 80
postorden (izquierda, derecha, raíz) 20, 40, 30, 60, 80, 70, 50
198
Recorre este arbol con inorden 50 / \ 30 70 / \ / \ 20 40 60 80
inorden (izquierda, raíz, derecha) 20, 30, 40, 50, 60, 70, 80
199
Nombra los 3 tipos de recorrridos que podemos hacer en un arbol
Preorden (RID) - raiz iquierda derecha InOrden (IRD) - izquierda raiz derecha Postorden (IDR) - izquierda derecha raiz
200
Recorre este arbol con preorden 50 / \ 30 70 / \ / \ 20 40 60 80
preorden (raíz, izquierda, derecha): 50, 30, 20, 40, 70, 60, 80
201
Función del algoritmo de Dijkstra.
Encontrar el camino mínimo de un nodo al resto en un grafo.
202
Para qué sirve el algoritmo de Kruskal?
Genera un árbol de recubrimiento mínimo en un grafo.
203
Cuál de las siguientes opciones describe el funcionamiento del algoritmo de inserción binaria? a) Utiliza la búsqueda binaria para encontrar la posición de inserción y luego desplaza elementos. b) Ordena la lista utilizando comparaciones sucesivas entre elementos adyacentes. c) Divide la lista en sublistas y las ordena recursivamente. d) Crea un árbol binario de búsqueda para ordenar los elementos.
A Utiliza la búsqueda binaria para encontrar la posición de inserción y luego desplaza elementos.
204
Indique el orden en el que se recorrería un árbol en postorden: a) Rama izquierda, rama derecha y raíz. b) Rama izquierda, raíz y rama derecha. c) Rama derecha, rama izquierda y raíz. d) Rama derecha, raíz y rama derecha.
A Rama izquierda, rama derecha y raíz. nota: remember, lzquierda SIEMPRE va antes que derecha. y la Posicion de R varía en funcion del tipo de recorrido (preorden R izquierda, inorden R centro, postorden R derecha)
205
¿Qué es una "tabla hash"? a) Un conjunto de claves públicas usadas para cifrado. b) Una estructura de datos que almacena pares clave-valor para búsquedas eficientes. c) Un tipo de algoritmo de encriptación. d) Un software para gestionar bases de datos.
B Una estructura de datos que almacena pares clave-valor para búsquedas eficientes.
206
Entre los métodos para la compresión de imágenes con pérdidas se encuentra: a) Codificación en planos de bits (como RLE). b) Codificación de longitud variable (como Huffman). c) Algoritmos de diccionario adaptables (como LZW). d) Codificación por transformación (como TDC).
D Codificación por transformación (como TDC).
207
Algoritmo de la teoría de grafos para encontrar un árbol recubridor mínimo en un grafo conexo y ponderado (T)
Kruskal
208
¿Qué formato de fichero es de gráficos vectoriales?
SVG
209
¿Cuál es la principal diferencia entre un grafo dirigido y uno no dirigido? A. En un grafo dirigido, los vértices pueden tener peso; en uno no dirigido, no. B. En un grafo dirigido, las aristas tienen un sentido (orientación); en uno no dirigido, no. C. Un grafo dirigido solo permite ciclos; un grafo no dirigido no. D. Un grafo dirigido almacena datos en matrices; un grafo no dirigido usa listas de adyacencia.
B En un grafo dirigido, las aristas tienen un sentido (orientación); en uno no dirigido, no.
210
En que consiste el algoritmo de bubblesort ?
Funciona revisando cada elemento de la lista qeu va a ser ordenada con el siguiente, intercambiandolos de posicion si estan en el orden equivocado. Recorre varias veces la lista hasta que no se necesitan más intercambios
211
¿Cuál de los siguientes NO es un método de detección de errores en transmisiones de datos? a) Bit de paridad b) Checksum c) Código Hamming d) Método Aiken
D Método Aiken Los métodos de bit de paridad, checksum y código Hamming son técnicas para detectar errores en la transmisión de datos. El método Aiken es una codificación binaria, no un método de detección de errores.