Algoritmos - Prueba
  • 1. Los algoritmos son procedimientos paso a paso o fórmulas para resolver problemas. Son un conjunto de instrucciones que describen cómo realizar una tarea o resolver un problema de forma eficaz. Los algoritmos se utilizan en diversos campos, como la informática, las matemáticas o la ingeniería, entre otros. Ayudan a organizar datos, tomar decisiones y automatizar procesos. El diseño de algoritmos eficaces permite optimizar el uso de recursos, mejorar el rendimiento y resolver problemas complejos de forma sistemática.

    ¿Qué algoritmo de ordenación tiene una complejidad temporal en el peor de los casos de O(n2)?
A) Ordenar por fusión
B) Clasificación por lotes
C) Clasificación por burbujas
D) Clasificación rápida
  • 2. ¿Qué estructura de datos se utiliza normalmente en un algoritmo de búsqueda en profundidad (DFS)?
A) Matriz
B) Pila
C) Árbol binario
D) Cola
  • 3. ¿Qué algoritmo se utiliza habitualmente para encontrar el camino más corto en un grafo con pesos de arista no negativos?
A) Algoritmo de Dijkstra
B) Algoritmo de Bellman-Ford
C) Algoritmo de Prim
D) Algoritmo de búsqueda A
  • 4. ¿Qué significa "recursión" en el contexto de los algoritmos?
A) Función que itera sobre una colección de elementos.
B) Una función que genera números aleatorios.
C) Una función que se llama a sí misma en un proceso de resolución de problemas.
D) Una función que no tiene declaración de retorno.
  • 5. ¿Qué algoritmo se utiliza para hallar el cierre transitivo de un grafo dirigido?
A) Algoritmo de Floyd
B) Algoritmo de Warshall
C) Algoritmo de Kosaraju
D) Algoritmo de Tarjan
  • 6. ¿Qué algoritmo se utiliza para encontrar la subsecuencia común más larga entre dos secuencias?
A) Selección Ordenar
B) Radix Ordenar
C) Clasificación por lotes
D) Algoritmo de la secuencia común más larga
  • 7. ¿Cómo se denomina el proceso de acortar una secuencia repetitiva utilizando ocurrencias anteriores?
A) Codificación Run-Length
B) Codificación Huffman
C) Codificación diferencial
D) Transformada Burrows-Wheeler
  • 8. ¿Cómo se mide el grado de detalle de las instrucciones de un algoritmo?
A) Escalabilidad
B) Eficacia
C) Complejidad
D) Granularidad
  • 9. ¿Qué algoritmo puede utilizarse para hallar el flujo máximo en una red de flujo?
A) Algoritmo de búsqueda binaria
B) Algoritmo Ford-Fulkerson
C) Búsqueda en profundidad
D) Clasificación por burbujas
  • 10. ¿Cuál es la complejidad temporal en el peor de los casos del algoritmo Quick Sort?
A) O(n)
B) O(n log n)
C) O(n2)
D) O(log n)
  • 11. ¿Cuál es la principal ventaja del algoritmo breadth-first search (BFS) sobre depth-first search (DFS)?
A) DFS utiliza menos espacio de memoria.
B) BFS garantiza el camino más corto hacia la meta.
C) DFS encuentra el camino más rápidamente.
D) BFS es más fácil de aplicar.
  • 12. ¿Qué estructura de datos se utiliza normalmente en un algoritmo de búsqueda Breadth-First Search?
A) Cola
B) Pila
C) Pila
D) Lista enlazada
  • 13. ¿Cuál es el objetivo principal del algoritmo Floyd-Warshall?
A) Encontrar los caminos más cortos entre todos los pares de vértices de un grafo ponderado.
B) Para calcular el caudal máximo en una red de caudal.
C) Determinar el mayor componente conexo de un grafo no dirigido.
D) Para ordenar los elementos en orden ascendente.
  • 14. ¿Cuál de los siguientes es un algoritmo de divide y vencerás?
A) Selección Ordenar
B) Ordenación por inserción
C) Ordenar por fusión
D) Clasificación por burbujas
  • 15. ¿Quién fue el científico y erudito persa que escribió sobre algoritmos en el año 825 d.C.?
A) Muḥammad ibn Mūsā al-Khwārizmī
B) Adelardo de Bath
C) Geoffrey Chaucer
D) Juan de Sevilla
  • 16. ¿Cuál es la forma latinizada del nombre de Al-Khwarizmi que se utilizó en las primeras traducciones?
A) augrym
B) arithmos
C) algoritmi
D) Algorismo
  • 17. ¿Cuál de las obras de al-Khwārizmī es conocida como 'Libro de la computación india'?
A) Liber Alghoarismi de practica arismetrice
B) Liber Algoritmi de numero Indorum
C) Los cuentos de Canterbury
D) kitāb al-ḥisāb al-hindī
  • 18. ¿En qué contexto se denominan a menudo, de forma incorrecta, 'algoritmos' los sistemas de recomendación en redes sociales?
A) Utilizan procesos deterministas para generar recomendaciones.
B) Estos sistemas se basan en heurísticas, no en algoritmos propiamente dichos.
C) Se basan en secuencias finitas de instrucciones.
D) Proporcionan resultados correctos y bien definidos para todos los usuarios.
  • 19. ¿Cuál es el papel de las estructuras condicionales en algoritmos avanzados?
A) Garantizan que el algoritmo siempre termine su ejecución.
B) Permiten desviar la ejecución del código a través de diferentes caminos.
C) Eliminan la aleatoriedad del algoritmo.
D) Impiden el razonamiento automatizado.
  • 20. ¿A qué se refiere el término 'razonamiento automatizado' en el contexto de los algoritmos?
A) Generar resultados aleatorios sin entrada.
B) Deducir inferencias válidas a través de la ejecución de código.
C) Utilizar heurísticas para resolver problemas.
D) Seguir una secuencia fija de operaciones.
  • 21. ¿Cuál es la importancia de las 'piedras augrym' mencionadas por Geoffrey Chaucer?
A) Se utilizaban para realizar cálculos posicionales.
B) Eran computadoras primitivas.
C) Eran una forma de programación algorítmica.
D) Representaban métodos heurísticos.
  • 22. ¿En qué antigua civilización se registraron los primeros algoritmos de división?
A) Matemáticas chinas
B) Matemáticas babilónicas
C) Matemáticas egipcias
D) Matemáticas griegas
  • 23. ¿A qué dinastía se asocian las tablillas de arcilla babilónicas que describen algoritmos para calcular fórmulas?
A) Dinastía de Hammurabi
B) Dinastía neobabilónica
C) Dinastía asiria
D) Dinastía acadia
  • 24. ¿Con qué antigua civilización se asocia el papiro matemático de Rhind?
A) Matemáticas indias
B) Matemáticas egipcias
C) Matemáticas griegas
D) Matemáticas babilónicas
  • 25. ¿Quién desarrolló el primer algoritmo criptográfico para descifrar códigos encriptados?
A) Nicómaco
B) Muhammad ibn Musa al-Khwarizmi
C) Euclides
D) Al-Kindi
  • 26. ¿Qué método describió Al-Kindi para el criptoanálisis?
A) Análisis de frecuencia
B) Cifrado por transposición
C) Cifrado de César
D) Cifrado por sustitución
  • 27. ¿En qué texto antiguo se describió por primera vez el algoritmo euclidiano?
A) Introducción a la aritmética de Nicómaco
B) Los Elementos de Euclides
C) Álgebra de Al-Khwarizmi
D) Sulba Sutras
  • 28. ¿A quién se le atribuye el diseño del primer algoritmo destinado a una computadora?
A) George Stibitz
B) Herman Hollerith
C) Ada Lovelace
D) Charles Babbage
  • 29. ¿Qué mecanismo fue fundamental para la invención de los relojes de péndulo en la Edad Media?
A) Mecanismo de péndulo
B) Oscilador de cuarzo
C) Mecanismo de escape de palanca
D) Mecanismo de volante
  • 30. ¿Qué dispositivo se considera la primera computadora verdaderamente capaz de ejecutar cualquier algoritmo (Turing-completa)?
A) La máquina analítica de Babbage
B) Z3
C) La máquina de diferencias
D) ENIAC
  • 31. ¿Cuál era el uso principal de la cinta perforada desarrollada en la década de 1870?
A) Transmisión de datos
B) Impresión de imágenes
C) Grabación de audio
D) Mensajería de texto
  • 32. ¿Qué invención dio origen al desarrollo de las tarjetas perforadas?
A) Máquina analítica
B) Telégrafo
C) Red de conmutación telefónica
D) Telar de Jacquard
  • 33. ¿Quién inventó el dispositivo digital de cálculo en 1937?
A) Konrad Zuse
B) John von Neumann
C) Alan Turing
D) George Stibitz
  • 34. ¿En qué siglo se comenzó a utilizar maquinaria automática precisa, lo que condujo al desarrollo de autómatas mecánicos?
A) Siglo XV
B) Siglo XIX
C) Siglo XIII
D) Siglo XVII
  • 35. ¿Qué invención de 1835 contribuyó al desarrollo de las redes de conmutación telefónica?
A) Telégrafo
B) Máquina diferencial
C) Tarjetas perforadas
D) Relés electromecánicos
  • 36. ¿Qué invento se utilizó a nivel mundial a mediados del siglo XIX?
A) Televisión
B) Teléfono
C) Telégrafo
D) Radio
  • 37. ¿Cuál fue un avance significativo en el almacenamiento y la transmisión de datos alrededor de 1890?
A) Tarjetas perforadas
B) Disquetes
C) Discos duros
D) Cintas magnéticas
  • 38. ¿Quién inició los intentos de resolver el problema de decisión de David Hilbert en 1928?
A) Alan Turing
B) David Hilbert
C) Emil Post
D) Alonzo Church
  • 39. ¿Cuál de estas formalizaciones está asociada con Alonzo Church y fue introducida en 1936?
A) Funciones recursivas
B) Máquinas de Turing
C) Cálculo lambda
D) Formulación 1
  • 40. ¿Qué avance en el desarrollo de la inteligencia artificial ha invertido la secuencia tradicional de la evolución de los algoritmos, pasando de heurísticas a algoritmos formales?
A) Programa SAINT
B) Computación cuántica
C) Estándares de encriptación de NIST
D) Inteligencia artificial basada en transformadores
  • 41. ¿Qué actualizaciones realizó el NIST en 2024 relacionadas con la computación cuántica?
A) Estándares de cifrado post-cuántico
B) Máquinas de Turing
C) Cálculo lambda
D) Programa SAINT
  • 42. ¿Cuál de las siguientes opciones no es una representación estructurada de algoritmos que evita las ambigüedades comunes del lenguaje natural?
A) Diagramas Drakon
B) Pseudocódigo
C) Lenguajes naturales
D) Diagramas de flujo
  • 43. ¿Qué representación proporciona la tabla de estados exacta y la lista de transiciones para una máquina de Turing?
A) Descripción de alto nivel
B) Descripción de la implementación
C) Descripción formal
D) Tablas de control
  • 44. ¿Qué símbolo principal en un diagrama de flujo representa las decisiones?
A) Rectángulos
B) Puntos
C) Diamantes
D) Flechas
  • 45. ¿Qué algoritmo de búsqueda es más eficiente para listas ordenadas en términos de complejidad temporal?
A) Búsqueda binaria
B) Ordenamiento de burbuja
C) Búsqueda secuencial
D) Búsqueda lineal
  • 46. En una representación de diagrama de flujo, ¿qué simboliza una flecha?
A) Flujo del programa
B) Punto de decisión
C) Salida
D) Anidamiento de subestructuras
  • 47. ¿Qué representa típicamente el pseudocódigo en el análisis de algoritmos?
A) Una representación simple y general.
B) Una guía de implementación detallada.
C) Un código optimizado para un hardware específico.
D) Una ayuda visual, como un diagrama de flujo.
  • 48. ¿Cuál de las siguientes NO es una estructura canónica ampliada por Tausworthe?
A) SEQUENCE
B) RECURSION
C) IF-THEN-ELSE
D) WHILE-DO
  • 49. ¿Qué técnica de resolución de problemas implica invocarla a sí misma repetidamente?
A) Recursión
B) Iteración
C) Procesamiento paralelo
D) Ejecución secuencial
  • 50. ¿Qué enfoque de diseño implica dividir un problema en subproblemas más pequeños?
A) Patrón de método plantilla
B) Programación dinámica
C) Divide y vencerás
D) Patrón decorador
  • 51. ¿Qué tipos de algoritmos son inherentemente secuenciales y no pueden ser paralelizados?
A) Algoritmos que pueden ser paralelizados
B) Algoritmos no deterministas
C) Algoritmos distribuidos
D) Problemas inherentemente secuenciales
  • 52. ¿Qué patrón de diseño de algoritmos implica definir una estructura básica de un algoritmo en un método?
A) Programación dinámica
B) Patrón de método plantilla
C) Patrón decorador
D) Divide y vencerás
  • 53. ¿Qué enfoque implica construir múltiples soluciones de forma gradual y abandonarlas si no pueden conducir a una solución completa válida?
A) Búsqueda exhaustiva o por fuerza bruta
B) Retroceso (backtracking)
C) Divide y vencerás
D) Reducción de la complejidad
  • 54. ¿Cuál es la pregunta fundamental que plantea la posibilidad de que los algoritmos aleatorios con una complejidad temporal polinómica puedan ser los más rápidos para ciertos problemas?
A) Problema de reducción de la complejidad
B) Problema de Monte Carlo
C) Problema P versus NP
D) Problema de Las Vegas
  • 55. ¿Cuál es la subclase de los algoritmos de Monte Carlo que se ejecuta en tiempo polinómico?
A) ZPP
B) RP
C) P
D) NP
  • 56. ¿Cuál es una aplicación común de los algoritmos voraces en la teoría de grafos?
A) Optimizar funciones lineales con restricciones.
B) Resolver problemas de programación entera.
C) Encontrar árboles de expansión mínimos.
D) Simular procesos de recocido (simulated annealing).
  • 57. ¿Qué algoritmo heurístico es no determinista?
A) Recocido simulado
B) Búsqueda tabú
C) Algoritmo de Floyd-Warshall
D) Algoritmo de Prim
  • 58. ¿Qué tipos de problemas se pueden resolver utilizando el método voraz para encontrar árboles de expansión mínimos?
A) Problemas con restricciones de números enteros.
B) Problemas de programación lineal.
C) Grafos sin ciclos negativos.
D) Problemas de programación dinámica.
  • 59. ¿Qué sistema de inteligencia artificial descubrió algoritmos de ordenamiento y hash mejorados?
A) AlphaEvolve
B) AlphaZero
C) AlphaDev
D) DeepMind
  • 60. ¿En qué año fue presentado AlphaDev por Google DeepMind?
A) 2019
B) 2020
C) 2023
D) 2025
  • 61. ¿Qué utiliza AlphaEvolve para proponer cambios en el código?
A) Programadores humanos
B) Aprendizaje por refuerzo
C) Modelos de lenguaje
D) Evaluadores automatizados
  • 62. ¿Qué biblioteca integró los pequeños algoritmos de ordenamiento descubiertos por AlphaDev?
A) Marco de colecciones de Java
B) C# System.Linq
C) Función de ordenamiento integrada de Python
D) Biblioteca estándar de C++ para ordenamiento de LLVM
Examen creado con That Quiz — donde se practican las matemáticas.