option
Cuestiones
ayuda
daypo
buscar.php

Taller de Algoritmos y Estructuras de Datos II - Parcial 2

COMENTARIOS ESTADÍSTICAS RÉCORDS
REALIZAR TEST
Título del Test:
Taller de Algoritmos y Estructuras de Datos II - Parcial 2

Descripción:
Preguntero unificado del 2do parcial (Daypo + Studocu), sin repetidas.

Fecha de Creación: 2026/11/12

Categoría: Informática

Número Preguntas: 233

Valoración:(0)
COMPARTE EL TEST
Nuevo ComentarioNuevo Comentario
Comentarios
NO HAY REGISTROS
Temario:

¿Qué nos indica el factor de carga de una tabla hash?. La relación entre el tamaño de la tabla y el número primo. La fracción de la tabla que está llena. La fracción de la tabla que contiene elementos borrados. El promedio de sondeos necesarios por inserción. La cantidad de colisiones producidas en la tabla.

Un árbol es una estructura fundamental en las ciencias de la computación y está representado por los siguientes elementos: Raíces y bucles. Nodos y ciclos. Niveles y pesos. Claves y arreglos. Nodos y aristas.

¿Por qué es posible implementar en los objetos String la técnica de almacenamiento en caché del código hash?. Porque los objetos String son inmutables. Porque los objetos String son sincronizados. Porque los objetos String son comparables. Porque los objetos String son de longitud fija. Porque los objetos String se guardan en un pool común.

Un nodo interno es cualquier nodo que posea hijos. VERDADERO. FALSO.

¿Con cuál de las siguientes funciones podemos generar números aleatorios? Seleccione las 4 (cuatro) opciones correctas. random.nextLong();. random.Float();. random.Double();. random.nextChar();. random.nextInt();.

¿Cuándo se produce una colisión?. Cuando se intenta insertar un elemento en una tabla ya llena. Cuando el factor de carga de la tabla supera el valor de 0,5. Cuando a un mismo elemento le corresponden dos direcciones distintas. Cuando a dos elementos distintos les corresponde la misma dirección. Cuando la función hash devuelve una dirección fuera de la tabla.

En los grafos ponderados, ¿cuál es la forma correcta de obtener la longitud de un camino de pesos?. Contar la cantidad de vértices del camino. Realizar el producto del costo de las aristas del camino. Realizar la suma del costo de las aristas del camino. Obtener el máximo costo entre las aristas del camino. Calcular el promedio del costo de las aristas del camino.

La longitud del camino externo de un árbol: Es lo que se utiliza para calcular la altura máxima del árbol. Es lo que se utiliza para calcular el coste de un recorrido completo. Es lo que se utiliza para calcular el coste de una búsqueda sin éxito. Es lo que se utiliza para calcular el coste de una búsqueda con éxito. Es lo que se utiliza para calcular la cantidad de hojas del árbol.

¿Cuál de los siguientes es el código correcto para el método findMax en un subárbol?. private BinaryNode<AnyType> findMax(BinaryNode<AnyType> t) { if (t != null) while (t.right != null) t = t.left; return t; }. private BinaryNode<AnyType> findMax(BinaryNode<AnyType> t) { if (t != null) while (t.left != null) t = t.right; return t; }. private BinaryNode<AnyType> findMax(BinaryNode<AnyType> t) { if (t != null) while (t.right != null) t = t.right; return t.right; }. private BinaryNode<AnyType> findMax(BinaryNode<AnyType> t) { if (t != null) while (t.right != null) t = t.right; return t; }. private BinaryNode<AnyType> findMax(BinaryNode<AnyType> t) { if (t != null) while (t.left != null) t = t.left; return t; }.

En un trie binario. ¿En dónde se ubican los caracteres?. En los nodos internos. En los nodos hoja. En la raíz del árbol. En las ramas que unen los nodos. En el último nivel del árbol.

Un digrafo es un: Grafo dirigido. Grafo bipartito. Grafo completo. Grafo conexo. Grafo ponderado.

Dados los números 15, 28, 36, 43, 55 y una tabla con 8 celdas, si aplicamos la función hash H(k) = k div tablesize (sólo tomando la parte entera), ¿se produce alguna colisión?. Sí, el 36 colisiona con el 43. Sí, el 28 colisiona con el 36. Sí, el 15 colisiona con el 28. Sí, el 43 colisiona con el 55. No, no se producen colisiones.

La técnica general denominada AlgoritmoAleatorio utiliza un número...Seleccione la opción correcta: Decimal. Binario. Usa símbolos. Aleatorio. Entero.

¿Cuál de las siguientes afirmaciones NO define una propiedad principal de un árbol?. Estructura lineal y dinámica de datos. Estructura no lineal y recursiva de datos. Estructura jerárquica y dinámica de datos. Estructura dinámica con un único nodo raíz. Estructura no lineal y dinámica de datos.

¿Para qué sirve la función setSeed de la clase Random?. Cambiar el rango de los números aleatorios. Reiniciar el conteo de números generados. Cambiar la semilla de los números aleatorios. Obtener la semilla actual del generador. Cambiar la distribución de los números aleatorios.

Un ARBOL BINARIO DE BUSQUEDA BALANCEADO (AVL) tiene como propiedad adicional que: Las ALTURAS de los subárboles izquierdo y derecho deben ser siempre iguales. Las ALTURAS de los subárboles izquierdo y derecho pueden diferir en solo una unidad. Las ALTURAS de los subárboles izquierdo y derecho deben diferir en al menos una unidad. Las ALTURAS de los subárboles izquierdo y derecho pueden diferir en solo dos unidades. Los PESOS de los subárboles izquierdo y derecho pueden diferir en solo una unidad.

En un árbol de altura 2, ¿cuál de las siguientes afirmaciones es correcta?. El nivel máximo es igual a 1. El nivel máximo es igual a 5. El nivel máximo es igual a 2. El nivel máximo es igual a 4. El nivel máximo es igual a 3.

¿Podemos crear un objeto HuffmanTree sin proporcionar un objeto CharCounter?. VERDADERO. FALSO.

Mientras mayor sea el agrupamiento primario, ¿qué sucede? Seleccione las 4 (cuatro) opciones correctas. Se produce mayor agrupamiento. Más rápido crece el agrupamiento. Se reduce el costo de las búsquedas. Inserciones más costosas. Se reduce el rendimiento.

Si en un grafo existe por lo menos un camino que conecta un par de vértices, es decir, si para cualquier par de vértices (a, b), existe al menos un camino posible desde a hacia b, diremos que el grafo es: Regular. Bipartito. Acíclico. Conexo. Completo.

Implantando el problema de Josephus, ¿quién ganaría un juego de N=5 y M=2, siendo N el número de participantes y M el número de pasadas? El juego comienza en el jugador de la posición 1 (5 jugadores en círculo numerados de 1 a 5 en sentido horario). El jugador de la posición 4. El jugador de la posición 2. El jugador de la posición 3. El jugador de la posición 1. El jugador de la posición 5.

El recorrido por niveles: Se implementa utilizando una cola donde se almacenan los nodos que ya han sido visitados. Cuando se visita un nodo se colocan sus hijos al final de la cola. Se implementa utilizando una pila donde se almacenan los nodos que no han sido visitados. Cuando se visita un nodo se colocan sus hijos en el tope de la pila. Se implementa utilizando una cola donde se almacenan los nodos que no han sido visitados. Cuando se visita un nodo se colocan sus hijos al inicio de la cola. Se implementa utilizando una pila donde se almacenan los nodos que ya han sido visitados. Cuando se visita un nodo se colocan sus hijos al inicio de la pila. Se implementa utilizando una cola donde se almacenan los nodos que no han sido visitados. Cuando se visita un nodo se colocan sus hijos al final de la cola.

La distribución de Poisson se aplica generalmente ¿a qué tipo de sucesos? Seleccione la respuesta correcta. Que tienen una probabilidad media. Que tienen una baja probabilidad. Que tienen una probabilidad creciente. Que tienen una alta probabilidad. Que tienen una probabilidad uniforme.

Para determinar la altura de un árbol binario, seleccione la respuesta correcta: Se deberá implementar un método recursivo que sume las claves de cada subárbol desde la raíz. Se deberá implementar un método iterativo que cuente las hojas y arranque desde la raíz. Se deberá implementar un método recursivo que cuente los niveles y arranque desde la raíz. Se deberá implementar un método recursivo que cuente los nodos y arranque desde la raíz. Se deberá implementar un método recursivo que cuente los niveles y arranque desde las hojas.

La ordenación topológica se emplea para ordenar vértices en los grafos cíclicos dirigidos y acíclicos dirigidos. VERDADERO. FALSO.

¿Cuáles de los siguientes conceptos se refieren a la Distribución de Poisson? Seleccione las 4 (cuatro) opciones correctas: El número de sucesos en una región de cierto tamaño no es conocido. Representa distribuciones no uniformes. El número de sucesos en una región de cierto tamaño es conocido. Modela la ocurrencia de sucesos ocasionales. Se emplea en simulación.

En un análisis simplista para estimar el rendimiento del sondeo lineal se hacen 2 suposiciones. Seleccione las 2 (dos) respuestas correctas. Los elementos se eliminan mediante borrado perezoso. La tabla hash es de gran tamaño. Cada sondeo de la tabla es independiente del sondeo anterior. El factor de carga de la tabla es mayor que uno. El tamaño de la tabla es un número primo.

En un trie binario. ¿Cómo obtenemos la representación de un carácter?. La posición del nodo dentro de su nivel. El peso acumulado del nodo y sus hijos. El camino seguido hasta el nodo. La profundidad del nodo dentro del árbol. El número de hijos que tiene el nodo.

Un GRAFO ACÍCLICO es aquel que es: NO DIRIGIDO y con CICLOS. PONDERADO y sin ARISTAS. CONEXO y con todos los vértices ADYACENTES. DIRIGIDO y con CICLOS. DIRIGIDO y sin CICLOS.

Teniendo una tabla Hash con 10 celdas y los siguientes valores para la función hash (h: Hash(h)): 43:0, 13:3, 63:6, 49:3, 64:4, 28:9, 19:9; ¿En qué posición se insertará 19 si usamos un sondeo cuadrático?. En la posición: 5. En la posición: 8. En la posición: 2. En la posición: 7. En la posición: 1.

Según el siguiente árbol de Huffman, ¿cuál es la codificación del carácter "c"? Árbol de Huffman: aristas izq=0, der=1; a es hoja a la izq de la raíz (código 0); a la derecha un nodo con hijo izq (nodo con hoja d y nodo con hojas ! y c) e hijo der (nodo con hojas r y b). 1110. 0101. 1101. 1011. 1010.

¿Cuál de las siguientes corresponde a la definición de dos de las técnicas más comunes para recorrer árboles?. Preorden: el trabajo de un nodo se realiza antes de procesar a sus hijos, utilizando un tiempo constante en cada nodo. Postorden: donde el trabajo de un nodo se realiza después de procesar a sus hijos, también se requiere un tiempo constante por cada nodo. Preorden: el trabajo de un nodo se realiza después de procesar a sus hijos, utilizando un tiempo constante en cada nodo. Postorden: donde el trabajo de un nodo se realiza antes de procesar a sus hijos, también se requiere un tiempo constante por cada nodo. Preorden: el trabajo de un nodo se realiza antes de procesar a sus hijos, utilizando un tiempo lineal en cada nodo. Postorden: donde el trabajo de un nodo se realiza después de procesar a sus hijos, también se requiere un tiempo lineal por cada nodo. Preorden: el trabajo de un nodo se realiza entre el procesamiento de sus hijos, utilizando un tiempo constante en cada nodo. Postorden: donde el trabajo de un nodo se realiza después de procesar a sus hijos, también se requiere un tiempo constante por cada nodo. Inorden: el trabajo de un nodo se realiza antes de procesar a sus hijos, utilizando un tiempo constante en cada nodo. Preorden: donde el trabajo de un nodo se realiza después de procesar a sus hijos, también se requiere un tiempo constante por cada nodo.

¿Para qué son útiles las rutinas WriteEncondignTable y ReadEncondingTable?. Para leer (ReadEncondingTable) y escribir (WriteEncondignTable) el código completo. Para leer (ReadEncondingTable) y escribir (WriteEncondignTable) la tabla de decodificación. Para leer (WriteEncondignTable) y escribir (ReadEncondingTable) archivos WinRar. Para leer (WriteEncondignTable) y escribir (ReadEncondingTable) la tabla de codificación. Para leer (ReadEncondingTable) y escribir (WriteEncondignTable) la tabla de codificación.

¿Cuándo es necesario hacer rehashing?. Cuando el factor de carga alcance el valor 0,5. Cuando el factor de carga alcance el valor 0,25. Cuando el factor de carga alcance el valor 2. Cuando el factor de carga alcance el valor 0,75. Cuando el factor de carga alcance el valor 1.

Un ARBOL se puede realizar su recorrido por ANCHURA, el cual se realiza: Verticalmente, desde la hoja más a la izquierda hasta la más a la derecha. Horizontalmente, desde las hojas a todos los padres antes de llegar a la RAIZ. Horizontalmente, desde la RAIZ a todos los hijos antes de pasar a la descendencia. Recursivamente, visitando el subárbol izquierdo, la RAIZ y luego el subárbol derecho. Verticalmente, desde la RAIZ hasta una hoja antes de pasar a los hermanos.

Para calcular el costo medio de una búsqueda con éxito dentro de un árbol binario, se debe: Calcular el promedio de las alturas de sus nodos. Calcular la suma de las profundidades de sus nodos. Calcular el promedio de las profundidades de sus nodos externos. Calcular el promedio de las profundidades de sus nodos. Calcular el promedio de las profundidades de sus hojas.

¿Qué tipo de número se aconseja tomar para el tamaño de una tabla hash con sondeo cuadrático?. Números pares. Números primos. Múltiplos de cuatro. Potencias de dos. Números compuestos.

Cuando INSERTAMOS en un ARBOL BINARIO DE BUSQUEDA un valor menor que el de la RAIZ, se inserta en: El subárbol izquierdo. El primer lugar libre del último nivel. La posición de la raíz, desplazándola. El subárbol derecho. El subárbol de menor altura.

Este es un algoritmo voraz (greedy) que sirve 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 solo positivos: Ford-Fulkerson. Prim. Kruskal. Dijkstra. Floyd-Warshall.

¿Qué clases fundamentales se utilizan en Java para representar un árbol binario?. BinaryNode, BinaryTree, Iterator. BinaryNode, BinarySearch, AnyType. BinaryLeaf, BinaryTree, Comparable. TreeNode, BinaryTree, AnyType. BinaryNode, BinaryTree, AnyType.

Dado el siguiente bosque de árboles con sus respectivos pesos al costado, ¿Cuál sería un árbol resultante de aplicar el algoritmo de Huffman? Bosque de árboles (nodo^peso): A^10, S^15, E^3, C^1, I^12. Árbol T4 (peso 41) con hijos T2 (izq) y T3 (der); T2 con hijos S (izq) e I (der); T3 con hijos T1 (izq) y A (der); T1 con hijos E (izq) y C (der). Árbol T4 (peso 41) con hijos T3 (izq) y S (der); T3 con hijos T2 (izq) e I (der); T2 con hijos T1 (izq) y A (der); T1 con hijos E (izq) y C (der). Árbol T4 (peso 41) con hijos T3 (izq) y S (der); T3 con hijos T2 (izq) y A (der); T2 con hijos T1 (izq) e I (der); T1 con hijos E (izq) y C (der). Árbol T4 (peso 41) con hijos T3 (izq) y A (der); T3 con hijos T2 (izq) e I (der); T2 con hijos T1 (izq) y S (der); T1 con hijos E (izq) y C (der). Árbol T4 (peso 41) con hijos T3 (izq) e I (der); T3 con hijos T2 (izq) y S (der); T2 con hijos T1 (izq) y A (der); T1 con hijos E (izq) y C (der).

¿Qué resuelve el algoritmo de ordenamiento topológico?. Árbol de expansión mínima. Componentes conexas del grafo. Orden de ejecución de actividades. Camino mínimo entre vértices. Flujo máximo entre vértices.

Un camino hamiltoniano en un grafo: Es un camino que visita cada vértice al menos una vez. Es un camino que comienza y termina en el mismo vértice. Es un camino que usa cada arista una y sólo una vez. Es un camino que visita cada vértice una y sólo una vez. Es un camino de menor peso entre dos vértices cualesquiera.

¿Cuáles de las siguientes palabras se usan para definir un árbol? Seleccione las 4 (cuatro) respuestas correctas. Ciclo. Nodo. Hoja. Raíz. Arista.

¿A cuál de los 4 casos de desequilibrio en un árbol AVL soluciona este pseudocódigo: static BinaryNode doubleRotateWithLeftChild(k3.left) { k3.left = rotateWithRightChild(k3.left); return rotateWithLeftChild(k3); }. Una inserción en el subárbol izquierdo del hijo derecho de Y. Una inserción en el subárbol derecho del hijo derecho del hijo izquierdo de Y. Una inserción en el subárbol derecho del hijo derecho de Y. Una inserción en el subárbol izquierdo del hijo izquierdo de Y. Una inserción en el subárbol derecho del hijo izquierdo de Y.

Entendemos como GRAFO NO DIRIGIDO al que: Sus VÉRTICES están todos conectados entre sí. Sus ARISTAS tienen un sentido dado. Sus ARISTAS no tienen un sentido dado. Sus ARISTAS tienen un peso asociado. Sus VÉRTICES no forman ciclos.

Según la Teoría de Análisis de Caminos Críticos, en un grafo de eventos cada vértice indica: La terminación de una actividad y sus actividades dependientes. La asignación de una actividad y sus actividades sucesoras. La holgura de una actividad y sus actividades críticas. El inicio de una actividad y sus actividades predecesoras. La duración de una actividad y sus recursos asociados.

¿Cuáles de las siguientes operaciones pueden implementarse en árboles de búsqueda binaria? Seleccione las 4 (cuatro) respuestas correctas. FindMax. FindMin. Find. Insert. Heapify.

A la secuencia de vértices en un grafo se la define como: Adyacencia. Camino. Componente. Ciclo. Subgrafo.

¿Qué logra el algoritmo de Huffman?. Construir un código de longitud fija en forma óptima. Construir un código prefijo en forma óptima. Construir un código de longitud variable en forma aleatoria. Construir un árbol binario de búsqueda en forma óptima. Construir una tabla hash de códigos en forma óptima.

El recorrido de un árbol binario cuando hacemos: 1º se procesa la raíz. 2º subárbol izquierdo. 3º subárbol derecho. Se llama: Por niveles. Inorden. Preorden. Orden simétrico. Postorden.

¿Cuál sería la codificación del siguiente árbol de Huffman? Árbol: T4 tiene hijos T3 (izq) y A (der); T3 tiene hijos T1 (izq) y T2 (der); T1 tiene hijos D (izq) y E (der); T2 tiene hijos B (izq) y C (der). A=1, B=011, C=010, D=001, E=000. A=1, B=000, C=001, D=010, E=011. A=1, B=110, C=111, D=100, E=101. A=1, B=010, C=011, D=000, E=001. A=0, B=101, C=100, D=111, E=110.

Si hay demasiadas colisiones, el rendimiento de la tabla hash se verá: Notablemente mejorado. Levemente afectado. Moderadamente mejorado. Sin ninguna variación. Enormemente afectado.

El siguiente código es la implantación del algoritmo de Josephus mediante una lista enlazada. ¿Este algoritmo funciona? public static int josephus (int people, int passes){ Collection<Integer> theList = new LinkedList<Integer>(); //Construir lista for (int i = 1; i<=people; i++) theList.add(i); //Jugar la partida: Iterador<Integer> itr = theList.Iterator(); while(people-- != 1) { for (int i=0; i<=passes; i++) { if(!itr.hashNext()) itr = theList.Iterator(); itr.next(); } itr.remove(); } itr = theList.Iterator(); return itr.next(); }. Sí, el código está completo y bien desarrollado. No, porque no se puede eliminar un elemento con el iterador durante el recorrido. No, porque falta reiniciar el iterador al llegar al final de la lista. No, porque falta devolver el último jugador que queda en la lista. Sí, pero solo funciona cuando el número de pases es menor que el de jugadores.

Dado el siguiente árbol, ¿Cuál es el código para la palabra SLAG? Árbol: raíz con hijo izq (hojas S, L) e hijo der (hoja A a la izq y un nodo a la der; ese nodo tiene hoja F a la izq y un nodo a la der; ese último nodo tiene hojas G (izq) y M (der)). 0100101110. 0001101111. 1110010001. 0001101110. 000110110.

Según la Teoría de Grafos, cambiar la forma de las aristas para mejorar la visualización del grafo es una acción que: No es relevante, porque solo importa a qué vértices están unidas. Cambia el grafo, porque la forma indica la dirección de las aristas. Es relevante, porque la forma de las aristas determina su peso. Es relevante, porque define si dos grafos son isomorfos. Modifica el grafo, porque cambia la longitud de cada camino.

¿Qué significa en un árbol AVL que el factor de equilibrio de un nodo es 0?. Que el nodo está equilibrado y su subárbol izquierdo es una unidad más alto que el derecho. Que el nodo está equilibrado y su subárbol derecho es una unidad más alto que el izquierdo. Que el nodo es una hoja y no posee ningún subárbol izquierdo ni derecho. Que el nodo está desequilibrado y requiere una rotación simple para recuperar el equilibrio. Que el nodo está equilibrado y sus subárboles tienen exactamente la misma altura.

Según el siguiente árbol de Huffman, ¿cuál es el símbolo con mayor ocurrencia? Árbol de Huffman: aristas izq=0, der=1; a es hoja a la izq de la raíz (código 0); a la derecha un nodo con hijo izq (nodo con hoja d y nodo con hojas ! y c) e hijo der (nodo con hojas r y b). !. d. a. b. r.

En un código de longitud variable, ¿cómo se representan los caracteres más comunes?. Con códigos de longitud igual a la media. Con códigos de pequeña longitud. Con códigos de máxima longitud. Con códigos de extensa longitud. Con códigos de longitud intermedia.

Conceptos de Simulación. Seleccione las 3 (tres) opciones correctas. Tic. Simulación dirigida por procesos. Tablas Hash. Colisiones. Algoritmo de Josefo.

El algoritmo de Dijkstra es utilizado para resolver qué problema tipo de grafos: Problema del recorrido de todas las aristas sin ponderaciones. Problema del camino más corto con ponderaciones positivas. Problema del camino más largo con ponderaciones positivas. Problema del ciclo de menor costo con ponderaciones iguales. Problema del árbol de expansión con ponderaciones dirigidas.

El BALANCE de un ARBOL se realiza cuando: Se INSERTA o ELIMINA un elemento del ARBOL. Se RECORRE el ARBOL en inorden. Se BUSCA un elemento en el ARBOL. Solo se INSERTA un elemento en el ARBOL. Se BUSCA o RECORRE un elemento del ARBOL.

¿Qué árboles serían resultantes de aplicar el algoritmo de Huffman en el siguiente bosque? Se pide el resultado en la segunda combinación. Seleccione 3 (tres) opciones correctas. Bosque (nodo^peso): A^10, S^12, E^12, C^1, I^12. Árbol T2 (peso 23) con hijos T1 (izq) y S (der); T1 con hojas A y C. Árbol T2 (peso 23) con hijos T1 (izq) e I (der); T1 con hojas A y C. Árbol T2 (peso 36) con hijos T1 (izq) e I (der); T1 con hojas S y E. Árbol T2 (peso 24) con hijos S (izq) y E (der); T1 con hojas A y C. Árbol T2 (peso 23) con hijos T1 (izq) y E (der); T1 con hojas A y C.

Hay grafos que permiten contestar varias preguntas importantes en proyectos, tales como: ¿Cuál es el menor tiempo de terminación del proyecto? ¿Qué actividades se pueden retrasar, y por cuánto tiempo, sin afectar el tiempo mínimo de terminación? Para ello: Debemos transformar el grafo de actividades en un árbol de expansión mínima. Debemos transformar el grafo de eventos en un grafo de actividades. Debemos transformar el grafo acíclico en un grafo cíclico de precedencias. Debemos transformar el grafo de actividades en un grafo de eventos. Debemos transformar el grafo dirigido en un grafo no dirigido ponderado.

Si definimos que en un grafo a lo sumo sólo 1 arista une dos vértices cualquiera. Entonces decimos que el grafo es... Un multigrafo. Un grafo completo. Un grafo bipartito. Un pseudografo. Un grafo simple.

En Java cada objeto String almacena internamente el valor de su hashCode. ¿Cómo se denomina esta técnica?. Encadenamiento del código hash. Precálculo estático de las claves. Almacenamiento en caché del código hash. Internado de cadenas constantes. Rehash incremental del código hash.

El equilibrio de un árbol AVL se restaura mediante rotaciones. Si el nodo que se tiene que reequilibrar es Y, pueden producirse cuatro casos de pérdida de equilibrio. ¿En cuáles se emplea la rotación simple?. Una inserción en el subárbol izquierdo del hijo izquierdo de Y y una inserción en el subárbol izquierdo del hijo derecho de Y. Una inserción en el subárbol izquierdo del hijo izquierdo de Y y una inserción en el subárbol derecho del hijo derecho de Y. Una inserción en el subárbol derecho del hijo izquierdo de Y y una inserción en el subárbol derecho del hijo derecho de Y. Solamente una inserción en el subárbol izquierdo del hijo izquierdo de Y. Una inserción en el subárbol izquierdo del hijo derecho de Y y una inserción en el subárbol derecho del hijo izquierdo de Y.

¿Cuáles de las siguientes son rutinas de la estructura HashSet? Seleccione las 4 (cuatro) respuestas correctas. add. remove. isActive. getMin. clear.

La verdadera aleatoriedad en una computadora es: Fácil de alcanzar. Muy difícil de alcanzar. Siempre es aleatoria. A veces sí, otras no. Imposible de alcanzar.

El algoritmo de Huffman es: Un algoritmo para generar un código de longitud fija. Un algoritmo para ordenar un árbol de búsqueda. Un algoritmo para construir un árbol de codificación. Un método para cifrar el contenido de un archivo. Un algoritmo para construir un árbol de búsqueda balanceado.

Pueden ocurrir "desequilibrios en zig-zag", es decir, desequilibrios que no son ni a la derecha ni a la izquierda. ¿Qué rotación se debe usar para llegar a un equilibrio?. Reinserción del nodo desequilibrado. Rotación simple a izquierda. Recoloreo de los nodos involucrados. Rotación doble. Rotación simple a derecha.

La clase para árboles de Huffman tiene 4 operaciones públicas. ¿Cuáles son? Seleccione 4 (cuatro) opciones correctas: ReadEncondignTable. GetChar. GetCode. WriteEncondignTable. NodeCode.

El trie binario es una estructura de datos en la que la rama izquierda representa un 1 y la rama derecha representa un 0. El camino recorrido hasta un nodo indica su representación. VERDADERO. FALSO.

En simulación, la instrucción random.nextDouble(); es utilizada para: Generar un número aleatorio de tipo double entre 0.0 y 1.0. Generar un número aleatorio de tipo int entre 0 y 1. Generar un número aleatorio de tipo float entre 0.0 y 1.0. Generar un número aleatorio de tipo double entre -1.0 y 1.0. Generar un número aleatorio de tipo double entre 1.0 y 100.0.

¿Qué resuelve el siguiente fragmento de código? public int XYZ(int n) { if (n == 0) return 1; else return n * XYZ(n-1); }. Potencia de dos. Fibonacci. Factorial. Suma de los primeros n números. Máximo común divisor.

¿Cuáles de las siguientes clases intervienen en la implementación del algoritmo de Huffman?. HuffmanTree. HuffmanNode. BitOutPutStream. CharCounter. BitInputStream.

¿Cuál es la secuencia de celdas analizadas para una búsqueda sin éxito de un elemento X en un sondeo lineal?. Una secuencia aleatoria de celdas de la tabla. La misma secuencia que la de inserción del elemento. Solo las celdas ocupadas hasta el final de la tabla. La secuencia de inserción pero partiendo de la última celda. La secuencia inversa a la de inserción del elemento.

¿Qué conceptos se utilizan para trabajar con números aleatorios? Seleccione las 4 (cuatro) opciones correctas. Algoritmo de Huffman. Algoritmo de división. Distribución de Poisson. Distribución uniforme. Algoritmo aleatorizado.

En la aplicación del rehashing, ¿qué podemos afirmar? Seleccione 4 (cuatro) opciones correctas. Se recorre la matriz original. Se copian los elementos a la nueva tabla sin recalcular su hash. Se crea una nueva tabla hash vacía. Se añaden los elementos activos a la nueva tabla. Se guarda una referencia a la tabla original.

¿Cuáles algoritmos de recorrido van a encontrar todos los vértices que se encuentran conectados al vértice origen?. BFS y DFS. BFS y Kruskal. Solo BFS. Solo DFS. DFS y ordenamiento topológico.

En un generador de congruencia lineal completo. ¿Qué significa que un periodo sea completo? Recordemos que el generador de congruencia lineal es un generador de números aleatorios que satisfacen la siguiente ecuación. X(i+1) = A*X(i) (mod M). Que se generan todos los números entre 1 y M. Que se generan solo los números primos entre 1 y M-1. Que se generan todos los números entre 1 y M-1 en orden creciente. Que se generan todos los números entre 0 y M-1. Que se generan todos los números entre 1 y M-1.

Dado el siguiente bosque de árboles, ¿Cuál sería un árbol resultante en la tercer combinación del algoritmo de Huffman? Bosque de árboles (nodo^peso): A^15, B^7, C^6, D^5, E^4. Árbol T3 (peso 22) con hijos T1 (izq) y T2 (der); T1 con hojas C y D; T2 con hojas B y E. Árbol T3 (peso 22) con hijos T2 (izq) y B (der); T2 con hijos T1 (izq) y C (der); T1 con hojas D y E. Árbol T3 (peso 30) con hijos T2 (izq) y A (der); T2 con hijos T1 (izq) y C (der); T1 con hojas D y E. Árbol T3 (peso 22) con hijos T1 (izq) y T2 (der); T1 con hojas D y E; T2 con hojas B y C. Árbol T3 (peso 22) con hijos T1 (izq) y T2 (der); T1 con hojas B y D; T2 con hojas C y E.

Para la implementación Java completa de una tabla Hash con sondeo cuadrático, ¿qué conceptos debemos tener en cuenta? Seleccione las 4 (cuatro) respuestas correctas. Matriz HashEntry. Variable currentSize. Estructuras HashMap. Estructuras HashSet. Lista enlazada de colisiones.

¿Qué método en Java realiza la resolución del sondeo cuadrático?. Rehash. Insert. Hash. FindPos. IsActive.

Según la definición formal, un grafo está formado por... Un conjunto de aristas E y un conjunto de ciclos C. Un conjunto de vértices V y un conjunto de caminos C. Un conjunto de vértices V y un conjunto de raíces R. Un conjunto de nodos N y un conjunto de niveles L. Un conjunto de vértices V y un conjunto de aristas E.

Hablando de compresión de archivos, ¿qué nos asegura un código prefijo?. Que no haya ambigüedades al decodificar un código. Que cada código sea prefijo de otro código. Que no haya ambigüedades al codificar un código. Que los caracteres frecuentes usen menos bits. Que todos los códigos tengan la misma longitud.

¿Qué diferencia existe entre la variable currentSize y occupied en la clase HashSet?. CurrentSize es la capacidad total del arreglo y occupied la cantidad de elementos activos. CurrentSize es el tamaño lógico del HashSet y occupied la cantidad total de celdas ocupadas. CurrentSize es la cantidad de colisiones y occupied el tamaño lógico del HashSet. CurrentSize es el tamaño lógico del HashSet y occupied la cantidad de celdas libres. CurrentSize es la cantidad total de celdas ocupadas y occupied el tamaño lógico del HashSet.

¿Cómo se denomina al valor inicial de un generador de números aleatorios?. Multiplicador. Incremento. Semilla. Período. Módulo.

Respecto del sondeo cuadrático, seleccione las 3 (tres) afirmaciones correctas. Garantiza hallar una celda libre aunque el factor de carga supere 0,5. Se puede implementar sin multiplicaciones. Se puede implementar sin operaciones módulo. Elimina el problema de agrupamiento primario que presenta el sondeo lineal. Elimina el problema de agrupamiento secundario que presenta el sondeo lineal.

El algoritmo de Floyd-Warshall descrito en 1959 por Bernard Roy, es un algoritmo sobre grafos para encontrar el camino mínimo en grafos dirigidos ponderados que contengan ciclos negativos. VERDADERO. FALSO.

¿Para qué se realiza la compresión de archivos? Seleccione las 2 (dos) opciones correctas: Para proteger el contenido de los archivos frente a accesos no autorizados. Para eliminar los errores de transmisión en las redes. Para incrementar la tasa efectiva de transmisión a través de módems. Para aumentar la capacidad del disco. Para acelerar el acceso aleatorio a los registros del archivo.

Para buscar en un árbol binario (no necesariamente de búsqueda) se deberá usar: seleccione la respuesta correcta. Recorrido por niveles, sin recorridos en profundidad. Preorden o Inorden, pero no Postorden. Inorden o Postorden, pero no Preorden. Solo Inorden, ya que ordena las claves. Preorden, Inorden, Postorden indistintamente.

La técnica del doble hash, ¿qué fenómeno elimina?. Los elementos con borrado perezoso. El desbordamiento de la tabla. Agrupamiento secundario. Las colisiones. La necesidad de rehashing.

Un GRAFO es un conjunto de: ARISTAS o ARCOS unidos por VÉRTICES o PESOS. RAÍCES o HOJAS unidas por NIVELES o RAMAS. VÉRTICES o NODOS unidos por CAMINOS o CICLOS. VÉRTICES o NODOS unidos por ARISTAS o ARCOS. NODOS o HIJOS unidos por PADRES o RAÍCES.

Los generadores de congruencia lineal son inadecuados para algunas aplicaciones. VERDADERO. FALSO.

El objeto vertex mantiene 4 piezas de información para cada vértice. Identifique cuáles son: Las piezas son: name, adj, size y visited. Las piezas son: name, adj, dist y prev. Las piezas son: name, edges, weight y prev. Las piezas son: id, adj, cost y prev. Las piezas son: name, adj, dist y next.

El método getCode de HuffmanTree devuelve el código de un carácter determinado. ¿Qué significa que retorne una matriz de longitud cero?. Que no se encuentra el código para el carácter. Que el carácter se encuentra en un nodo interno. Que el árbol de codificación no tiene raíz. Que el código del carácter se repite en otro nodo. Que el carácter se representa con el código 0.

¿Cuál de los siguientes códigos es correcto para el método constructor de la clase HuffmanTree si se le pasa como parámetro el objeto CharCounter?. public HuffmanTree(CharCounter cc) { theCounts = new CharCounter(); root = null; createTree(); }. public HuffmanTree(CharCounter cc) { theCounts = cc; createTree(); root = null; }. public HuffmanTree(CharCounter cc) { theCounts = null; root = cc; createTree(); }. public HuffmanTree(CharCounter cc) { theCounts = cc; root = null; createTree(); }. public HuffmanTree(CharCounter cc) { cc = theCounts; root = null; createTree(); }.

Los árboles pueden definirse de dos maneras: de forma recursiva o no recursiva. VERDADERO. FALSO.

Si nos detenemos en el nodo E y utilizamos el método de primer hijo, siguiente hermano, ¿qué enlaces tendrá? (árbol: A con hijos B y C; B con hijos D y E; E con hijo H; C con hijos F y G; G con hijo K). El nodo E tendrá un enlace al nodo H como firstChild y otro al nodo C como nextSibling. El nodo E tendrá solo un enlace al nodo D como nextSibling. El nodo E tendrá solo un enlace al nodo B como firstChild. El nodo E tendrá solo un enlace al nodo H como nextSibling. El nodo E tendrá solo un enlace al nodo H como firstChild.

Si un grafo dirigido posee los vértices V1, V2, V3, V4, la siguiente enumeración de vértices V1, V3, V4, V2 corresponde a: Un camino mínimo del grafo. Un orden topológico para el grafo. Un recorrido en anchura del grafo. Un árbol de expansión del grafo. Un recorrido en profundidad del grafo.

Dados los números 13, 15, 23, 36, 43, 55 y una tabla con 8 celdas, si aplicamos la función hash H(k) = k div tablesize (sólo tomando la parte entera), ¿se produce alguna colisión?. No, no se producen colisiones. Sí, el 55 colisiona con el 43. Sí, el 15 colisiona con el 13. Sí, el 43 colisiona con el 36. Sí, el 23 colisiona con el 15.

En la rutina add de HashSet, ¿qué sucede si la llamada a findPos consigue encontrar X?. Retornamos false. Retornamos true. Insertamos X en la celda siguiente. Realizamos un rehashing de la tabla. Reemplazamos el elemento existente por X.

¿Los BUENOS generadores de números aleatorios son...? Selecciona la opción correcta. Fáciles de encontrar. Costosos de ejecutar. Comunes en las bibliotecas. Difíciles de encontrar. Fáciles de implementar.

Un árbol binario: Es un árbol en el que el subárbol izquierdo contiene solo claves menores. Es un árbol en el que ningún nodo puede tener más de dos subárboles. Es un árbol en el que ningún nodo puede tener más de dos niveles. Es un árbol en el que todo nodo debe tener exactamente dos subárboles. Es un árbol en el que ninguna hoja puede tener más de dos padres.

En el algoritmo de Huffman, ¿cuántas veces se seleccionan dos árboles para ser unidos?. C-1, siendo C el número de caracteres. C/2, siendo C el número de caracteres. C veces, siendo C el número de caracteres. C+1, siendo C el número de caracteres. C-2, siendo C el número de caracteres.

Si comparamos la codificación Huffman con la codificación binaria, podemos decir que: En ambas codificaciones, todos los posibles valores reciben códigos del mismo número de bits, pero en la codificación Huffman los códigos se almacenan en las hojas de un árbol. En la codificación Huffman, todos los posibles valores reciben códigos del mismo número de bits, mientras que en la codificación binaria cada valor tiene un número diferente de bits según su frecuencia de aparición. En la codificación binaria, todos los posibles valores reciben códigos del mismo número de bits, mientras que en la codificación Huffman cada valor tiene un número diferente de bits: los códigos más frecuentes poseen más bits. En ambas codificaciones, cada valor tiene un número diferente de bits: los códigos más frecuentes poseen menos bits, y la única diferencia es el uso de un árbol. En la codificación binaria, todos los posibles valores reciben códigos del mismo número de bits, mientras que en la codificación Huffman cada valor tiene un número diferente de bits: los códigos más frecuentes poseen menos bits.

Si una estructura recursiva no tiene la condición de corte puede ocurrir: Un arreglo desordenado. Una división por cero. Un loop infinito. Un error de compilación. Una lista circular.

El método getCode de HuffmanTree devuelve el código de un carácter determinado. ¿Qué significa que retorne null?. Que el carácter se representa con el código 0. Que el carácter se encuentra en la raíz del árbol. Que el árbol de codificación está vacío. Que el código del carácter es demasiado extenso. Que el carácter no está representado.

En la implementación del sondeo cuadrático en Java, la tabla hash contiene una matriz de referencias HashEntry; cada referencia puede ser: Null o un objeto. Siempre un objeto. Null o una lista enlazada. Un entero o una lista. Un objeto o un entero.

¿Cuál de las siguientes invocaciones es válida para generar 5 números aleatorios entre 10 y 20?. for(int i = 1; i<=5; i++) System.out.println(random.nextInt(20-10)+10);. for(int i = 1; i<=5; i++) System.out.println(random.nextInt(20-10+1));. for(int i = 1; i<=5; i++) System.out.println(random.nextInt(20-10+1)+10);. for(int i = 1; i<=5; i++) System.out.println(random.nextInt(20)+10);. for(int i = 1; i<5; i++) System.out.println(random.nextInt(20-10+1)+10);.

Un grafo acíclico. Seleccione 4 (cuatro) respuestas correctas: Sirve para modelar muchas situaciones de la vida real como proyectos. Implica que su longitud es el número total de vértices del grafo. Implica que para cada vértice v, no hay un camino directo que empiece y termine en v. Implica que su longitud es la longitud (número de arcos) del camino directo más largo. Es simplemente un grafo dirigido y que no contiene ciclos.

La agrupación primaria es un problema para factores de carga: Bajas. Menores a 0,25. Cercanas a 0,5. Altas. Moderadas.

El concepto de digrafo está referido a: Grafos isomorfos. Grafos dirigidos. Grafos ponderados. Grafos bipartitos. Grafos completos.

Una tabla Hash es: Un algoritmo de ordenamiento. Un método de compresión de datos. Un tipo de árbol balanceado. Una estructura de datos asociativa. Un recorrido sobre grafos.

El árbol de la siguiente figura no está completo ¿Qué podemos realizar para que lo esté? Árbol: raíz con hoja S (izq) y un nodo (der); ese nodo tiene hoja A (izq) y un nodo (der); ese nodo tiene hoja F (izq) y un nodo (der); ese último nodo tiene como único hijo la hoja G. Eliminando la raíz y promoviendo a S como nueva raíz. Situando S más abajo reemplazando a G. Intercambiando de lugar las hojas G y F. Situando F más arriba reemplazando a su padre. Situando G más arriba reemplazando a su padre.

¿Qué rango de valores devuelve la función random.nextLong()?. Enteros entre 2^-64 y 2^64. Enteros entre 0 y 2^32. Enteros entre -2^31 y 2^31. Enteros entre 2^-32 y 2^32. Enteros entre 0 y 2^64.

¿Qué usos tiene un árbol binario? Seleccione las 4 (cuatro) respuestas correctas. Tabla de dispersión (hashing). Árbol de búsqueda binaria. Árbol de expresión. Árbol de codificación de Huffman. Colas de prioridad.

El siguiente algoritmo resuelve un tipo de problema que surge al intentar encontrar el camino más corto. ¿Cuál de ellos? public void unweighted(String startName) { clearAll(); Vertex start = vertexMap.get(startName); if(start == null) throw new NoSuchElementException("Start vertex not found"); Queue<Vertex> q = new LinkedList<Vertex>(); q.add(start); start.dist = 0; while(!q.isEmpty()) { Vertex v = q.remove(); for(Edge e : v.adj) { Vertex w = e.dest; if(w.dist == INFINITY) { w.dist = v.dist + 1; w.prev = v; q.add(w); } } } }. Problema del camino más corto entre todos los pares. Problema del camino más corto no ponderado. Problema del camino más corto en grafos acíclicos. Problema del camino más corto con aristas negativas. Problema del camino más corto ponderado.

Dada la siguiente secuencia de pasos, ¿qué algoritmo estamos describiendo? 1. Designamos a v como vértice activo y como raíz del árbol T que se construirá. Se le asigna a v la etiqueta 0. 2. Sea i=0 y S={v}. 3. Hallar el conjunto M de todos los vértices no etiquetados que son adyacentes a algún vértice de S. 4. Si M es vacío el algoritmo termina. En caso contrario, se etiquetan todos los vértices de M con i+1, se añaden a T las aristas entre cada vértice de S y su vecino en M y se hace S=M. 5. i=i+1 y volver al paso 3. Búsqueda en profundidad. Algoritmo de Dijkstra. Búsqueda en anchura. Algoritmo de Prim. Algoritmo de Kruskal.

Para implementar un árbol, ¿qué dos enlaces son fundamentales? Seleccione las 2 (dos) respuestas correctas. Al padre situado en el nivel superior. Al hermano situado a la derecha. Al hermano situado a la izquierda. Al hijo situado más a la derecha. Al hijo situado más a la izquierda.

¿Qué atributos se definen en la clase Arista?. Destino y vértice previo. Costo y distancia acumulada. Destino y costo. Origen y destino. Origen y costo.

¿Qué tipos de operación Find podemos encontrar?. Las que son recursivas y las que no. Las que devuelven la clave y las que no. Las que son lineales y las que no. Las que tienen éxito y las que no. Las que modifican la tabla y las que no.

En la práctica, ¿de cuántas fases se compone la teoría de compresión de archivos?. 2 (dos). 4 (cuatro). 6 (seis). 3 (tres). 1 (uno).

La característica principal de la estructura de los árboles, al igual que los grafos, es que están formados por... Un conjunto de vértices y un conjunto de caminos. Un conjunto de nodos y un conjunto de niveles. Un conjunto de raíces y un conjunto de aristas. Un conjunto de hojas y un conjunto de ciclos. Un conjunto de nodos y un conjunto de aristas.

Podemos definir a los grafos isomorfos como: Grafos con la misma cantidad de vértices pero distinta estructura de conexiones. Diferentes representaciones gráficas de un mismo grafo. Grafos obtenidos al invertir el sentido de todas las aristas. Grafos que comparten únicamente el mismo número de aristas. Subgrafos obtenidos al eliminar vértices de un mismo grafo.

Para la técnica de encadenamiento separado, el factor de carga es normalmente próximo al valor: 0,5. 0,75. 0,25. 1. 2.

En la siguiente porción de código del algoritmo de Dijkstra una de las líneas es incorrecta. ¿Cuál de ellas? public void dijkstra(String startName) { PriorityQueue<Path> pq = new PriorityQueue<Path>; Vertex start = vertexMap.get(startName); If(start == null) throw new NoSuchElementException("Start vertex not found"); clearAll(); pq.add(new Path(start, 0)); start.dist = 0; int nodesSeen = 0; While(pq.esEmpty() && nodesSeen < vertexMap.size()){ Path vrec = pq.remove(); ...... // continuación del método de Dijkstra } }. Vertex start = vertexMap.get(startName);. While(pq.esEmpty() && nodesSeen < vertexMap.size()){. throw new NoSuchElementException("Start vertex not found");. Path vrec = pq.remove();. pq.add(new Path(start, 0)); start.dist = 0;.

El generador de congruencia lineal es un buen algoritmo para generar ¿qué tipo de distribución?. Distribución de Poisson. Distribución Exponencial. Distribución Binomial. Distribución Normal. Distribución Uniforme.

¿Qué sucede con la semilla si se invoca la clase Random con el constructor sin parámetros (Random random = new Random();)?. La semilla se inicializa en base al tiempo actual. La semilla se inicializa en base a la memoria libre. La semilla se inicializa en un valor fijo de la clase. La semilla se inicializa en cero. La semilla se inicializa en base al identificador del proceso.

La cantidad máxima de aristas en un árbol binario de altura 2 es: 4. 14. 6. 7. 8.

Una codificación óptima cumple la propiedad de que el árbol mediante el cual se representa la codificación debe ser completo. En caso de que el árbol no sea completo, ¿qué solución podríamos implementar?. Los nodos que tienen un único hijo pueden duplicarse en su nivel. Los nodos que tienen un único hijo pueden subirse de nivel. Las hojas de menor peso pueden subirse a la raíz. Los nodos que tienen un único hijo pueden bajarse de nivel. Los nodos que tienen dos hijos pueden subirse de nivel.

El siguiente código es la implantación del algoritmo de Josephus mediante una lista enlazada. ¿Este algoritmo funciona? public static int josephus (int people){ Collection<Integer> theList = new LinkedList<Integer>(); //Construir lista for (int i = 1; i<=people; i++) theList.add(i); //Jugar la partida: Iterador<Integer> itr = theList.Iterator(); while(people-- != 1) { for (int i=0; i<=passes; i++) { if(!itr.hashNext()) itr = theList.Iterator(); itr.next(); } itr.remove(); } itr = theList.Iterator(); return itr.next(); }. No, porque se debe pasar como parámetro el número de pases a realizar. No, porque no se puede eliminar elementos de una lista mediante un iterador. Sí, porque el método recorre la lista circularmente sin necesidad de más datos. No, porque se debe pasar como parámetro la lista de jugadores a recorrer. Sí, porque el número de pases se obtiene a partir de la cantidad de jugadores.

La colisión de dos o más elementos en una tabla hash es: Infrecuente. Evitable. Imposible. Inevitable. Improbable.

Dado el siguiente árbol, ¿Cuál es el código para la palabra FAL? Árbol: raíz con hijo izq (hojas S, L) e hijo der (hoja A en la izq y un nodo en la der; ese nodo tiene hoja F a la izq y un nodo a la der; ese último nodo tiene hojas G (izq) y M (der)). 1011001. 11101001. 1101001. 0010110. 1101000.

La representación de un sistema de archivos de un sistema operativo (por ejemplo: FAT, NTFS, ext4) es un claro ejemplo de: Árbol binario. Cola de prioridad. Árbol AVL. Grafo no dirigido. Árbol N-ario.

Las definiciones correctas en el contexto de grafos son: Seleccione las 2 (dos) respuestas correctas. Un árbol es un grafo simple que posee al menos un ciclo. Un camino hamiltoniano en un grafo es un camino que usa cada arista una y sólo una vez. Un grafo conexo es aquel en el que cada vértice está unido a todos los demás. Un árbol es un grafo conexo simple acíclico. Un camino euleriano en un grafo es un camino que usa cada arista una y sólo una vez.

¿Qué es la compresión?. La acción de dividir un archivo en bloques de menor tamaño. La acción de cifrar los bits de un archivo para protegerlos. La acción de reducir el número de bits que representan a un carácter. La acción de reordenar los bits de un archivo para ordenarlo. La acción de aumentar el número de bits que representan a un carácter.

(3.3) Teniendo un mismo bosque, ¿de qué depende el árbol generado con el método createTree de HuffmanTree?. De la cantidad de árboles que forman el bosque. De cómo se rompan los empates de peso. Del orden en que se lean los caracteres. De cómo se ordenen los nodos hijos. De la raíz de cada árbol del bosque.

En un árbol completo (estrictamente binario): Todos los nodos son hojas o tienen 2 hijos. Todos los nodos son hojas o tienen 1 hijo. Todos los nodos tienen 1 o 2 hijos, salvo las hojas. Solo la raíz tiene 2 hijos y el resto son hojas. Todas las hojas se encuentran en el mismo nivel.

¿Cuál es la longitud del siguiente árbol?: (árbol: A tiene hijos B y C; B tiene hijos D y E; E tiene hijo H; C tiene hijos F y G; G tiene hijo K). La longitud del camino es 4. La longitud del camino es 8. La longitud del camino es 9. La longitud del camino es 2. La longitud del camino es 3.

Dado el siguiente árbol, ¿Cuál es el código para la palabra MAP? Árbol: raíz con hijo izq (hojas M y N/I) e hijo der (hoja S a la izq y un nodo A a la der, que a su vez tiene hijos B y P; es decir A es nodo interno). El código es 0011110, ya que el árbol cumple con la condición de código de prefijo. No se puede resolver ya que el árbol no cumple con la condición de árbol binario completo. No se puede resolver ya que el árbol no cumple con la condición de árbol de búsqueda. No se puede resolver ya que el árbol no cumple con la condición de código de prefijo. El código es 0011111, ya que el árbol cumple con la condición de código de prefijo.

¿Qué metodos componen la clase BitInputStream? Seleccione 4 (cuatro): BitClose. ReadBit. GetBit. Close. BitInputStream.

¿Qué nos demuestra el siguiente teorema fundamental de grafos? Si un camino hasta el vértice v tiene un coste Dv y w es adyacente a v, entonces existe un camino a w de coste Dw = Dv + 1. Que si w es adyacente a v y existe un camino hasta v, también hay un camino a w, con coste igual al coste del camino a v más 1. Que si w es adyacente a v y existe un camino hasta v, el camino a w siempre es el de menor coste, igual al coste del camino a v. Que si w es adyacente a v y existe un camino hasta v, no existe un camino a w de coste menor al coste del camino a v más 1. Que si w es adyacente a v y existe un camino hasta v, también hay un camino a w, con coste igual al coste del camino a v menos 1. Que si w es adyacente a v y existe un camino hasta w, también hay un camino a v, con coste igual al doble del coste del camino a w.

En la implementación del problema de Josephus con un arreglo, si llegamos al final del arreglo y todavía no llegamos al valor de K, ¿por dónde se continúa el recorrido?. Agrandamos el arreglo y seguimos con las posiciones nuevas. Detenemos el recorrido y eliminamos el último jugador. Continuamos desde el final del arreglo en sentido inverso. Reiniciamos la cuenta de K desde el principio del arreglo. Continuamos al principio del arreglo.

¿Cuáles son las operaciones que podemos aplicar sobre árboles binarios de búsqueda?. find, findMax, findMin, insert, split, join, rebalance. find, findMax, findMin, remove, insert, sort, merge. find, findMax, findMin, removeMax, removeMin, insert, hash. find, findMax, findMin, remove, removeMax, removeMin, insert. find, findMax, findMin, remove, insert, rotateLeft, rotateRight.

¿Cuál sería la altura de un árbol vacío?. 1. -1. 0. 2. 3.

¿Qué algoritmo usaría para conocer el CAMINO MÍNIMO desde un único punto de origen en un GRAFO CON PESOS POSITIVOS?. DFS. DIJKSTRA. KRUSKAL. PRIM. WARSHALL.

En una distribución uniforme todos los números aleatorios dentro del rango especificado, tienen... ... la misma posibilidad de aparecer. ... una posibilidad de aparecer que depende del número previo. ... mayor posibilidad de aparecer cuanto más cerca estén del centro. ... una posibilidad de aparecer proporcional a su frecuencia previa. ... menor posibilidad de aparecer cuanto mayor sea su valor.

Los 2 constructores de la clase Random son: Public random() y public random(int Parametro). Public random() y public random(long Parametro). Public random() y public random(String Parametro). Public random(int Parametro) y public random(double Parametro). Public random(long Parametro) y public random(long Min, long Max).

¿Qué rutina de la clase HashSet cambia el tamaño de la colección a cero?. remove. add. clear. rehash. isActive.

Un ARBOL BINARIO tiene como caracteristica fundamental que: Cada nodo tiene siempre exactamente dos hijos. El número de hijos está limitado como mucho a tres. Solo la raíz puede tener hasta dos hijos. El número de hijos está limitado como mucho a dos. El número de niveles está limitado como mucho a dos.

Según el algoritmo de Huffman, un árbol binario es una forma de representar el código prefijo que facilita el proceso de descodificación. En este árbol los caracteres se almacenan en: La raíz. Los nodos de mayor peso. Las aristas. Los nodos internos. Las hojas.

(3.3) ¿Cuáles acciones son realizadas en el método de creación del árbol de Huffman (createTree)? Seleccione las 4 opciones correctas: Mantener una cola de prioidad. Configurar el nodo root al árbol resultante al finalizar las combinaciones. Extraer dos árboles de la cola de prioridad. Huffman Implemente Comparable. Descomprimir el archivo.

En grafos, DFS significa: Depth Final Search. Directed First Search. Depth First Search. Breadth First Search. Distance First Search.

La forma más simple de implementar un árbol N-ario es: Utilizar la técnica padre/siguiente descendiente. Utilizar un arreglo de hijos de tamaño fijo en cada nodo. Utilizar una lista de adyacencia para cada nodo. Utilizar la técnica primer hijo/siguiente hermano. Utilizar una referencia izquierda y otra derecha en cada nodo.

El problema de cálculo del camino mínimo en un grafo sin pesos se define como encontrar el camino más corto desde el vértice de origen hasta cualquier otro vértice del grafo. Esto se mide teniendo en cuenta: El número de vértices del grafo. El grado de los vértices recorridos. La cantidad de caminos alternativos. La suma de los pesos de las aristas. El número de aristas.

La genealogía familiar (representación gráfica de los antepasados y los descendientes de un individuo) es un claro ejemplo de estructura de TDA árbol binario. VERDADERO. FALSO.

¿Qué genera un objeto de la clase Random de java.util?. Una secuencia de números pseudoaleatorios. Una secuencia de números aleatorios verdaderos. Una secuencia de números ordenados. Una secuencia de números sin repetición. Una secuencia de números primos.

¿Qué algoritmo usaría para conocer el CAMINO MÍNIMO desde un único punto de origen en un GRAFO SIN PESOS?. PRIM. BFS. KRUSKAL. WARSHALL. DFS.

Si tomamos en cuenta un árbol N-ario: Un árbol binario es un caso especial para cuando N=3. Un árbol binario es un caso especial para cuando N=1. Un árbol binario es un caso general para cuando N>2. Un árbol ternario es un caso especial para cuando N=2. Un árbol binario es un caso especial para cuando N=2.

De un árbol de raiz (r) y de hijos izquierdo (i) y derecho (d), formamos un nuevo árbol cuya raíz sea la raíz del hijo izquierdo colocamos el hijo izquierdo de i (nuestro i') y como hijo derecho construímos un nuevo árbol que tendrá como raíz, la raíz del árbol (r), el hijo derecho de i (d') será el hijo izquierdo y el hijo derecho será el hijo derecho del árbol (d). La descripción anterior a que método pertenece?. Reequilibrio por recoloreo de nodos. Rotación doble izquierda-derecha. Rotación doble derecha-izquierda. Rotación simple a derecha. Rotación simple a izquierda.

En el caso del sondeo cuadrático, el tamaño de la tabla debe ser un número primo y el factor de carga no debe sobrepasar el valor: 1. 0,5. 0,75. 0,9. 0,25.

Si consideramos A y M constantes y X0 la semilla que satisface 1 <= X0 < M, un generador de congruencia lineal de período completo tiene un período de: A - 1. M + 1. M - 1. M - 2. M.

¿Cómo logra su objetivo el algoritmo de Huffman?. Combinando árboles de menor peso. Combinando árboles de menor altura. Combinando árboles de mayor peso. Combinando árboles de peso intermedio. Combinando árboles de igual peso.

El número medio de celdas examinadas al buscar un elemento inexistente utilizando sondeo lineal, con factor de carga A, es aproximadamente: (1+1/(1-A)^2)/2. 1+1/(1-A)^2. (1+1/A^2)/2. (1+1/(1-A))/2. (1+1/(1-A)^2)/4.

Conocemos como estructura recursiva a aquella: Estructura de datos en la cual los elementos se ubican mediante una función de hash. Estructura de datos en la cual los elementos se ordenan según una clave de comparación. Estructura de datos en la cual los elementos se acceden únicamente por un extremo. Estructura de datos en la cual los elementos se definen a sí mismos. Estructura de datos en la cual los elementos se almacenan en posiciones contiguas de memoria.

El problema del Camino más Corto, en teoría de grafos: Es el problema que consiste en encontrar un camino entre dos vértices tal que el número de vértices sea máximo. Es el problema que consiste en encontrar un conjunto de aristas que conecte todos los vértices con suma de pesos mínima. Es el problema que consiste en encontrar un camino entre dos vértices tal que pase por todos los vértices una sola vez. Es el problema que consiste en encontrar un camino entre dos vértices tal que recorra todas las aristas una sola vez. Es el problema que consiste en encontrar un camino entre dos vértices tal que la suma de los pesos de sus aristas sea mínima.

Teóricamente podemos decir que los grafos son estructuras matemáticas que se utilizan para modelar... Relaciones jerárquicas únicamente entre objetos de cierto tipo. Relaciones ternarias entre objetos de cierto tipo. Relaciones binarias entre objetos de cierto tipo. Operaciones algebraicas entre objetos de cierto tipo. Secuencias lineales de objetos de cierto tipo.

¿El siguiente árbol podemos considerarlo como árbol completo? Árbol con nodos numerados: 10 (hijos 15 y 08); 08 (hijos 11 y 5); 5 (hijos 20 y 7); 7 (hijo 9). No, no es un árbol completo porque no cumple con la condición de que todos sus nodos tengan a lo sumo 2 hijos. No, no es un árbol completo porque no cumple con las condiciones de que todos sus nodos sean hojas ni que cada nodo tenga 2 hijos. Sí, es un árbol completo porque todos sus niveles están llenos excepto posiblemente el último. No, no es un árbol completo porque tiene más de dos nodos con un solo hijo. Sí, es un árbol completo porque cumple con la condición de que todos sus nodos tengan 0 o 2 hijos.

En un árbol binario: Si X es padre de Q y U, Q es padre de S y V, podemos decir que X es tío de S y V. Si X es padre de Q y U, Q es padre de S y V, podemos decir que U es tío de S y V. Si X es padre de Q y U, Q es padre de S y V, podemos decir que U es abuelo de S y V. Si X es padre de Q y U, Q es padre de S y V, podemos decir que U es hermano de S y V. Si X es padre de Q y U, Q es padre de S y V, podemos decir que Q es tío de S y V.

¿Qué función miembro de la clase Random debemos utilizar si queremos simular una tirada de dado?. nextInt(7). nextInt(7)+1. nextInt(5)+1. nextInt(6). nextInt(6)+1.

Un árbol con raíz tiene ciertas propiedades. Seleccione 3 (tres) correctas: Todo nodo c, excepto la raíz, está conectado mediante exactamente una arista a otro nodo p, denominado padre de c. Uno de los nodos se distingue de los demás por estar designado como raíz. Todo árbol debe tener la misma cantidad de hijos del lado derecho y del lado izquierdo. Existe un camino único que recorre el árbol desde la raíz a cada nodo; el número de aristas que hay que recorrer se denomina longitud del camino. Todo nodo c, excepto la raíz, está conectado mediante exactamente una arista a otro nodo p, y el nodo c se denomina padre de p.

Dado el siguiente grafo dirigido ponderado con vértices S, A, B, C, D, T y aristas: S->A (9), S->C (7), A->B (9), C->B (10), C->D (15), B->D (3), B->T (18), D->T (36). Si aplicamos el algoritmo de Dijkstra partiendo del vértice S, ¿Cuál de los siguientes resultados es correcto?. D(s,a) = 9; D(s,b) = 17; D(s,c) = 7; D(s,d) = 32;. D(s,a) = 9; D(s,b) = 18; D(s,c) = 7; D(s,d) = 22;. D(s,a) = 9; D(s,b) = 17; D(s,c) = 7; D(s,d) = 20;. D(s,a) = 9; D(s,b) = 18; D(s,c) = 7; D(s,d) = 21;. D(s,a) = 9; D(s,b) = 17; D(s,c) = 7; D(s,d) = 22;.

En la clase Random de java.util, ¿cuántas formas tenemos de generar números aleatorios?. 2. 5. 6. 4. 3.

¿Qué estructura de datos debemos utilizar para obtener una búsqueda en O(log N) en el problema de Josephus?. Una estructura de árbol. Una estructura de arreglo ordenado. Una estructura de cola. Una estructura de pila. Una estructura de lista circular.

En la implementación del algoritmo de Huffman, ¿De qué se encarga la clase BitOutPutStream?. Envuelve un OutputStream y permite la salida bit a binario. Elimina el InputStream de la clase main. Envuelve un OutputStream y permite la salida de bytes liberados. Envuelve un InputStream y permite la salida bit a bit. Envuelve un OutputStream y permite la salida bit a bit.

El sondeo cuadrático no ha sido analizado matemáticamente, aunque sabemos que elimina el fenómeno del agrupamiento primario. VERDADERO. FALSO.

¿Cuántos bits necesitamos para poder representar todos los caracteres ASCII en una codificación de longitud fija?. 32 bits. 8 bits. 12 bits. 16 bits. 6 bits.

Un árbol es binario de búsqueda cuando: Cada nodo tiene exactamente 2 hijos. Todos los nodos hoja están en el mismo nivel. Cada nodo puede tener un máximo de 2 hijos. Cada nodo puede tener un máximo de 1 hijo. Cada nodo puede tener un máximo de 3 hijos.

¿Cuál de las siguientes operaciones es soportada en tablas hash?. DeleteMin. FindMax. FindMin. Find. Successor.

¿Cuál de las siguientes es una forma de representar a los jugadores en la implementación del problema de Josephus con un algoritmo simple?. Mediante una lista enlazada. Mediante una pila. Mediante un montículo binario. Mediante una tabla hash. Mediante un árbol binario de búsqueda.

¿Cuáles de los siguientes son usos importantes de los números aleatorios? Seleccione 4 (cuatro) opciones correctas. Rendimiento de algoritmos. Compresión de datos. Criptografía. Simulación. Prueba de programas.

Este método normalmente se utiliza cuando hay aristas con peso negativo: Kruskal. Dijkstra. Prim. Búsqueda en anchura. Bellman-Ford.

Si el factor de equilibrio de un nodo en un árbol AVL es: Seleccione las 4 (cuatro) respuestas correctas. "1", entonces el nodo está equilibrado y su subárbol derecho es un nivel más alto. "-1", entonces el nodo está equilibrado y su subárbol izquierdo es un nivel más alto. "2", entonces el nodo está equilibrado y su subárbol derecho es dos niveles más alto. ">=2" o "<=-2", entonces es necesario reequilibrar. "0", entonces el nodo está equilibrado y sus subárboles tienen exactamente la misma altura.

¿Cuál es el algoritmo que utiliza una PILA como estructura auxiliar?. Algoritmo de Dijkstra. Algoritmo de Kruskal. Algoritmo de Prim. Algoritmo DFS. Algoritmo BFS.

¿Cómo garantizamos que las operaciones remove (Que elimina un jugador en el problema de Josephus) sean logarítmicas? O (N log N). Construyendo un árbol de búsqueda binaria mediante inserciones recursivas. Construyendo una pila con los jugadores mediante inserciones sucesivas. Construyendo una cola de prioridad con los jugadores mediante inserciones iterativas. Almacenando los jugadores en una lista enlazada y recorriéndola en cada pase. Almacenando los jugadores en un arreglo y desplazando los elementos tras cada remove.

Definimos como CAMINO en una estructura de tipo ARBOL a: El número de enlaces entre la raíz y el nodo más profundo. El conjunto de nodos que se encuentran en un mismo nivel. Una sucesión de enlaces que conectan dos nodos. El conjunto de nodos que comparten un mismo padre. El número de enlaces que salen de un nodo hacia sus hijos.

¿Qué sucede si en un bosque de árboles tenemos dos nodos con el mismo peso? Ej.: Bosque (nodo^peso): A^10, S^12, E^3, C^1, I^12. Si tienen el mismo peso, se debe elegir el árbol con más hojas. En el ejemplo, en la segunda combinación se debe elegir I. Si tienen el mismo peso, es indistinto qué árbol seleccionar. En el ejemplo, en la segunda combinación se puede elegir tanto S como I. Si tienen el mismo peso, se combinan entre sí en un único árbol. En el ejemplo, en la segunda combinación se combinan S e I. Si tienen el mismo peso, se debe elegir el menor alfabéticamente. En el ejemplo, en la segunda combinación se debe elegir I. Si tienen el mismo peso, se debe elegir el que primero aparece en el bosque. En el ejemplo, en la segunda combinación se debe elegir S.

Dada la siguiente tabla de códigos para caracteres, ¿Cuál es el árbol que la representa? Tabla: M=00, E=01, S=10, B=110, P=111. Árbol: la raíz tiene hijo izquierdo con hojas M (izq) y E (der); hijo derecho con hoja B (izq) y un nodo (der) cuyas hojas son S (izq) y P (der). Árbol: la raíz tiene hijo izquierdo con hojas M (izq) y E (der); hijo derecho con hoja S (izq) y un nodo (der) cuyas hojas son P (izq) y B (der). Árbol: la raíz tiene hijo izquierdo con hojas E (izq) y M (der); hijo derecho con un nodo (izq) cuyas hojas son B (izq) y P (der) y hoja S (der). Árbol: la raíz tiene hijo izquierdo con hojas M (izq) y E (der); hijo derecho con hoja S (izq) y un nodo (der) cuyas hojas son B (izq) y P (der). Árbol: la raíz tiene hijo izquierdo con hoja M (izq) y un nodo (der) cuyas hojas son E (izq) y S (der); hijo derecho con hojas B (izq) y P (der).

En el análisis de caminos críticos, seleccione 2 (dos) respuestas correctas: Cada vértice determina una actividad. Cada vértice determina un evento. Implica trabajar con grafos no dirigidos. Cada arista determina un evento. Implica trabajar con grafos acíclicos.

El tiempo de ejecución de caso peor de un Algoritmo Aleatorizado es siempre el mismo que el tiempo de ejecución de caso peor de un Algoritmo No Aleatorizado. VERDADERO. FALSO.

(3.1) En compresión de archivos, si los caracteres del árbol se encuentran en un nodo hoja, salvo uno, ¿qué sucede?. No se puede garantizar que el árbol resultante sea un árbol binario. No se puede garantizar que cada carácter se identifique de forma no ambigua. Se garantiza que el carácter restante se identifique con un único bit. Se garantiza la identificación no ambigua solo de los caracteres frecuentes. Se garantiza que cada carácter se identifique de forma no ambigua.

¿Cuál de los siguientes árboles binarios se puede considerar como árbol de búsqueda y cuál no? ¿Por qué? Árbol 1: raíz 7 (izq: 2 con hijos 1 y 5, y 5 con hijo izquierdo 3; der: 9). Árbol 2: igual pero el nodo 5 tiene hijos 3 (izq) y 8 (der). El árbol 1 no puede ser considerado como árbol binario de búsqueda porque no satisface la propiedad de búsqueda ordenada. Ambos árboles pueden ser considerados como árboles binarios de búsqueda porque satisfacen la propiedad de búsqueda ordenada. Ninguno de los árboles puede ser considerado como árbol binario de búsqueda porque no satisfacen la propiedad de búsqueda ordenada. El árbol 2 puede ser considerado como árbol binario de búsqueda porque satisface la propiedad de búsqueda ordenada. El árbol 1 puede ser considerado como árbol binario de búsqueda porque satisface la propiedad de búsqueda ordenada.

¿Cómo se denomina a la longitud de una secuencia hasta que se repite un número?. Período. Multiplicador. Incremento. Módulo. Semilla.

El error más común en una simulación es: Utilizar una semilla inadecuada. Utilizar un período inadecuado. Utilizar un método inadecuado. Utilizar un tipo de dato inadecuado. Utilizar un rango inadecuado.

¿En qué consiste la técnica del doble hash?. En aplicar la misma función de hash dos veces. En utilizar dos tablas hash en simultáneo. En avanzar un paso cuadrático tras cada colisión. En duplicar el tamaño de la tabla. En aplicar una segunda función de hash.

Según la Teoría de Análisis de Caminos Críticos, en un grafo de actividades cada arista representa: Costos totales de las actividades. Eventos de inicio y fin del proyecto. Relaciones de precedencia entre las actividades. Holguras entre actividades consecutivas. Recursos asignados a cada actividad.

Según la búsqueda en árboles binarios de búsqueda, si deseamos hacer una búsqueda del elemento mínimo del árbol, la operación que realiza el algoritmo es: Recorrer el árbol yendo siempre a través del subárbol derecho, hasta llegar a un nodo que no tenga hijo. Recorrer el árbol por niveles, comparando ambos hijos, hasta llegar a la última hoja. Recorrer el árbol yendo siempre a través del subárbol izquierdo, hasta llegar a la última hoja del nivel inferior. Recorrer el árbol yendo siempre a través del subárbol izquierdo, hasta llegar a un nodo que no tenga hijo. Recorrer el árbol alternando subárbol izquierdo y derecho, hasta llegar a un nodo que no tenga hijo.

En un árbol, ¿cuál de las siguientes afirmaciones es correcta?. Todos los nodos del último nivel son hermanos. Todos los hijos de la raíz son hermanos. Todos los hijos de la raíz son hojas. Todas las hojas del árbol son hermanas. Todos los descendientes de la raíz son hermanos.

Durante el sondeo lineal se forman grandes: Agrupamientos de celdas. Grupos de claves con igual hash. Listas de elementos enlazados. Tablas secundarias de desborde. Bloques de celdas vacías.

El algoritmo de Shannon-Fano: En el que se construye un código basado en un diccionario de cadenas de símbolos repetidas. En el que se construye un código sin prefijo basado en un conjunto de símbolos y sus posiciones en el archivo. En el que se construye un código de longitud fija basado en un conjunto de símbolos y sus probabilidades. En el que se construye un código sin prefijo basado en un conjunto de símbolos y sus probabilidades. En el que se construye un código basado en un conjunto de símbolos y sus repeticiones consecutivas.

La técnica de borrado perezoso consiste en: Marcar los componentes como borrados en lugar de eliminarlos físicamente. Reemplazar el componente borrado por el último insertado. Copiar los componentes no borrados a una tabla nueva. Desplazar los componentes siguientes una celda hacia atrás. Posponer la eliminación hasta que la tabla esté completamente llena.

¿Es posible comprobar la uniformidad de los números aleatorios?. No, porque los números pseudoaleatorios son determinísticos y no admiten pruebas estadísticas. Sí, generando una secuencia grande de números entre 0 y 9 y contando la frecuencia de cada uno. Sí, generando una secuencia grande de números entre 0 y 9 y comprobando que cada uno aparezca una sola vez. Sí, generando una secuencia corta de números entre 0 y 9 y verificando que ninguno se repita. No, solo es posible comprobar la independencia de los números y no su distribución.

¿Cuál es un atributo de un árbol?. Clave. Antecesor. Altura. Hermano. Ciclo.

Si queremos ELIMINAR en un ARBOL BINARIO DE BUSQUEDA un NODO que es una HOJA, debemos: Reemplazarlo por su único hijo y actualizar al padre. Eliminarlo y reinsertar a su padre en el árbol. Eliminarlo y reequilibrar el árbol con rotaciones. Reemplazarlo por el menor nodo de su subárbol derecho. Eliminarlo y no necesita hacer otra operación.

¿Cuál de las siguientes afirmaciones define el concepto de árbol correctamente?. Un árbol es una estructura de datos que tiene un nodo llamado raíz, donde a cada nodo i, exceptuando la raíz, le llegan aristas desde al menos dos nodos, a los cuales se les llama padres de i. Un árbol es una estructura de datos que tiene un nodo llamado raíz, donde a cada nodo i, exceptuando las hojas, le llega una arista desde exactamente otro nodo j, al cual se le llama padre de i. Un árbol es una estructura de datos que tiene un nodo llamado raíz, donde a cada nodo i, exceptuando la raíz, le llega una arista desde exactamente otro nodo j, al cual se le llama hijo de i. Un árbol es una estructura de datos que tiene un nodo llamado raíz, donde a cada nodo i, incluyendo la raíz, le llega una arista desde exactamente otro nodo j, al cual se le llama padre de i. Un árbol es una estructura de datos que tiene un nodo llamado raíz, donde a cada nodo i, exceptuando la raíz, le llega una arista desde exactamente otro nodo j, al cual se le llama padre de i.

¿Cuándo se produce una excepción en el método de inserción para un árbol binario de búsqueda?. Cuando el árbol queda desequilibrado tras insertar el nodo. Cuando el árbol en el que intentamos insertar está vacío. Cuando el nodo que intentamos insertar ya se encuentra en el árbol. Cuando el nodo que intentamos insertar es menor que la raíz. Cuando el nodo que intentamos insertar es mayor que todos los del árbol.

En un árbol AVL ¿Pueden diferir las alturas de los subárboles derecho e izquierdo? ¿Por qué?. Sí, pueden diferir cuanto mucho en un elemento porque es difícil insertar nuevos elementos al mismo tiempo para mantener el equilibrio. Sí, pueden diferir cuanto mucho en dos elementos porque es difícil eliminar nodos al mismo tiempo para mantener el equilibrio. No, solo pueden diferir en las hojas porque es difícil insertar nuevos elementos en los niveles intermedios. No, deben tener siempre la misma altura porque de lo contrario no se puede mantener el orden de búsqueda. Sí, pueden diferir en cualquier cantidad porque el equilibrio solo se verifica en la raíz del árbol.

Cuando nos referimos a recorrer un árbol binario en orden simétrico, seleccione la respuesta correcta: Es similar al recorrido en preorden, excepto por el hecho de que cuando se desapila un nodo por segunda vez, se declara ya visitado. Es similar al recorrido en postorden, excepto por el hecho de que cuando se desapila un nodo por segunda vez, se declara ya visitado. Es similar al recorrido en preorden, excepto por el hecho de que cuando se desapila un nodo por tercera vez, se declara ya visitado. Es similar al recorrido en postorden, excepto por el hecho de que cuando se desapila un nodo por primera vez, se declara ya visitado. Es similar al recorrido por niveles, excepto por el hecho de que cuando se desencola un nodo por segunda vez, se declara ya visitado.

El algoritmo de recorrido postorden se utiliza una pila para almacenar el estado actual. ¿Por cuántos estados pasa un nodo y cuáles son?. Dos estados: a punto de llamar recursivamente al subárbol izquierdo y a punto de procesar el nodo actual. Dos estados: nodo visitado y nodo pendiente de visitar, ambos almacenados en la pila de recorrido. Dos estados: a punto de llamar recursivamente al subárbol derecho y a punto de procesar el nodo actual. Tres estados: a punto de llamar recursivamente al subárbol izquierdo, al subárbol derecho y de procesar el nodo actual. Cuatro estados: a punto de llamar al subárbol izquierdo, al subárbol derecho, de procesar el nodo y de liberar el nodo.

¿A qué se refiere esta definición? Se parte de un nodo dado y se visitan los vértices del grafo de manera ordenada y sistemática, pasando de un vértice a otro a través de las aristas del grafo. Recorrido. Ciclo. Orden topológico. Árbol de expansión. Componente conexa.

El algoritmo de Bellman-Ford. Seleccione 4 (cuatro) respuestas correctas: En una de sus variantes es utilizado por el Protocolo de encaminamiento de información (RIP) de los routers. Es un buen ejemplo para aplicar solo a grafos con costes positivos y sin aristas de peso cero. Es un buen ejemplo para aplicar a grafos con costes negativos. Sirve para costes negativos ya que no son simplemente una curiosidad matemática. Es un buen ejemplo de una reducción del problema del camino hamiltoniano que es NP-Completo.

Según el siguiente árbol de Huffman, ¿cuál es el símbolo con menor probabilidad de ocurrencia? Árbol de Huffman: aristas izq=0, der=1; a es hoja a la izq de la raíz (código 0); a la derecha un nodo con hijo izq (nodo con hoja d y nodo con hojas ! y c) e hijo der (nodo con hojas r y b). b,c. a,d. !,c. r,b. d,!.

En un GRAFO decimos que el vértice V es ADYACENTE al vértice W cuando: Ambos pertenecen a la misma COMPONENTE CONEXA. Existe un CICLO que los contiene. Ambos tienen el mismo GRADO. Existe un CAMINO de longitud 2 que los une. Existe una ARISTA que los une.

En la rutina que crea el árbol de codificación de Huffman (createTree) debemos mantener una lista de prioridad de nodos. ¿Qué debemos hacer para lograrlo?. Debemos hacer que HuffNode implemente Runnable. Debemos hacer que HuffNode implemente Serializable. Debemos hacer que HuffNode implemente Cloneable. Debemos hacer que HuffNode implemente Comparable. Debemos hacer que HuffNode implemente Iterable.

El algoritmo de caminos mínimos en grafos acíclicos: Nos permite, con una cola de prioridad, su ejecución en tiempo lineal y funcionará aún en presencia de aristas negativas. Nos permite, con la ordenación topológica, su ejecución en tiempo lineal y funcionará aún en presencia de aristas negativas. Nos permite, con la ordenación topológica, su ejecución en tiempo cuadrático y funcionará aún en presencia de aristas negativas. Nos permite, con la ordenación topológica, su ejecución en tiempo lineal y funcionará solo en ausencia de aristas negativas. Nos permite, con una cola de prioridad, su ejecución en tiempo cuadrático y funcionará solo en ausencia de aristas negativas.

¿Qué sucede si creamos objetos Random siempre con la misma semilla?. Siempre obtendremos la misma secuencia en orden inverso. Siempre obtendremos secuencias que no se repiten entre ejecuciones. Siempre obtendremos la misma secuencia de números. Siempre obtendremos un error al repetir la semilla. Siempre obtendremos secuencias distintas de números.

Un ciclo que visita cada vértice una y sólo una vez, es la definición de: Camino Hamiltoniano. Ciclo Hamiltoniano. Ciclo Dirigido. Camino Euleriano. Ciclo Euleriano.

¿A qué tipo de recorrido recursivo hace referencia el siguiente código?: public void printTree() { if (left != null) left.printTree(); System.out.println(element); if (right != null) right.printTree(); }. Recorrido en postorden. Recorrido por niveles. Recorrido en preorden. Recorrido en orden inverso. Recorrido en orden.

Cuando en un grafo se da el caso de que una arista sale y llega al mismo nodo, estamos hablando de: Un puente. Una arista paralela. Un vértice aislado. Un bucle. Un ciclo hamiltoniano.

Teniendo en cuenta la teoría de Caminos Críticos, el tiempo de espera: Es la cantidad de tiempo que una actividad puede retrasarse sin retrasar la terminación total. Es la cantidad de tiempo que una actividad puede adelantarse sin adelantar el inicio total. Es la cantidad de tiempo que una actividad debe esperar para que terminen sus predecesoras. Es la cantidad de tiempo total que demora el camino crítico entre el evento inicial y el final. Es la cantidad de tiempo mínima que una actividad necesita para poder terminar su ejecución.

Si queremos calcular el camino mínimo podemos utilizar el algoritmo de Dijkstra. Si los pesos de las aristas son de valor 1, ¿qué algoritmo podemos utilizar con el mismo fin?. Bastará con usar el algoritmo de recorrido en profundidad (DFS). Bastará con usar el algoritmo de Kruskal. Bastará con usar el algoritmo de Prim. Bastará con usar el algoritmo de recorrido en anchura (BFS). Bastará con usar el ordenamiento topológico.

El algoritmo de división es el más simple para comprobar la primalidad. ¿Con qué tamaño de número es recomendable? Seleccione la opción correcta: <= 32 bits. <= 8 bits. <= 24 bits. <= 16 bits. <= 12 bits.

Si hablamos de grafos, ¿cuál de los siguientes se considera un problema tipo?. Problema del árbol de expansión con ponderaciones dirigidas. Problema del camino más largo con ponderaciones positivas. Problema del recorrido de todas las aristas sin ponderaciones. Problema del ciclo de menor costo con ponderaciones iguales. Problema del camino más corto con ponderaciones positivas.

En un grafo, seleccione 4 (cuatro) respuestas correctas: La ordenación topológica encuentra todos los órdenes topológicos de un grafo acíclico. El algoritmo de ordenamiento topológico simple se implementa en tiempo lineal, ya que procesa cada vértice sólo una vez. Al aplicarle el algoritmo de ordenamiento topológico, podemos afirmar que un grafo contiene ciclos si todos sus vértices tienen grado de entrada 0. Por lo general contiene varios órdenes topológicos. Al aplicarle el algoritmo de ordenamiento topológico, podemos afirmar que un grafo contiene ciclos si existen vértices aún no visitados y ninguno tiene grado de entrada 0.

¿Cuáles de las siguientes son propiedades de un vértice? Seleccione las 3 (tres) respuestas correctas. Longitud del camino. Grado de salida. Grado de entrada. Peso de la arista. Aristas adyacentes.

La cantidad de hojas en un árbol es: El nivel. El grado. El peso. La altura. La profundidad.

Los árboles son una estructura de datos que representa datos de forma jerárquica. ¿Cuáles son las representaciones más utilizadas?. Representar cada nodo como una matriz de adyacencia o representar el árbol con una cola. Representar cada nodo como una variable en memoria o representar el árbol con un arreglo. Representar cada nodo como una cadena de caracteres o representar el árbol con un conjunto. Representar cada nodo como una lista de aristas o representar el árbol con una matriz de pesos. Representar cada nodo como un archivo en disco o representar el árbol con una pila.

El problema de la recursión es: Requerir estructuras de datos ordenadas. Perder el valor de las variables locales. Generar un ciclo infinito. Resolver solo problemas de tamaño reducido. Duplicar los datos de entrada.

El ALGORITMO DE DIJKSTRA determina: La ruta más corta entre cada par de nodos del grafo. El árbol de expansión mínima que conecta todos los nodos. El orden de visita en anchura desde un nodo origen. El flujo máximo desde un nodo origen hacia un nodo destino. La ruta más corta desde un nodo origen hacia los demás nodos.

¿Qué sucede si empleamos un árbol de búsqueda binaria en vez de una lista enlazada en la solución del problema de Josephus?. Obtenemos un algoritmo logarítmico menos eficiente. Obtenemos un algoritmo lineal con la misma eficiencia. Obtenemos un algoritmo cuadrático menos eficiente. Obtenemos un algoritmo logarítmico más eficiente. Obtenemos un algoritmo de tiempo constante más eficiente.

¿A qué operación de árbol binario de búsqueda hace referencia esta descripción? Comenzamos por la raíz y vamos bifurcando repetidamente a la izquierda hasta que deje de haber un hijo izquierdo. Insert. FindMin. Find. FindMax. RemoveMin.

Denunciar Test