Fhernd

programacion_algoritmos_flashcards.tsv

Jan 7th, 2026
4,900
-1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | Software | 0 1
  1. Bubble Sort Algoritmo de ordenamiento simple que intercambia repetidamente elementos adyacentes si están en el orden incorrecto. Es lento pero fácil de entender.\n\nPseudocódigo:\npara i desde 0 hasta n-1\n para j desde 0 hasta n-i-2\n si A[j] > A[j+1]\n intercambiar A[j] y A[j+1]
  2. Selection Sort Algoritmo que selecciona repetidamente el elemento mínimo y lo coloca en su posición correcta. Reduce intercambios pero sigue siendo ineficiente.\n\nPseudocódigo:\npara i desde 0 hasta n-2\n min = i\n para j desde i+1 hasta n-1\n si A[j] < A[min]\n min = j\n intercambiar A[i] y A[min]
  3. Insertion Sort Algoritmo que construye la lista ordenada insertando cada nuevo elemento en su posición correcta. Muy eficiente para listas pequeñas.\n\nPseudocódigo:\npara i desde 1 hasta n-1\n clave = A[i]\n j = i-1\n mientras j >= 0 y A[j] > clave\n A[j+1] = A[j]\n j = j-1\n A[j+1] = clave
  4. Quick Sort Algoritmo divide y vencerás que elige un pivote y divide el arreglo en menores y mayores al pivote. Muy rápido en la práctica.\n\nPseudocódigo:\nquickSort(A, inicio, fin)\n si inicio < fin\n p = particionar(A, inicio, fin)\n quickSort(A, inicio, p-1)\n quickSort(A, p+1, fin)
  5. Merge Sort Algoritmo divide y vencerás que divide el arreglo en mitades, las ordena y luego las combina. Garantiza buen rendimiento.\n\nPseudocódigo:\nmergeSort(A)\n si tamaño(A) > 1\n dividir A en izquierda y derecha\n mergeSort(izquierda)\n mergeSort(derecha)\n combinar izquierda y derecha
  6. Greedy Algorithms Algoritmos que toman decisiones locales óptimas esperando obtener una solución global óptima. No siempre funcionan, pero son rápidos.\n\nPseudocódigo:\nsolución = vacía\nmientras haya opciones\n elegir la mejor opción local\n agregar a la solución
  7. Dynamic Programming Técnica que resuelve problemas dividiéndolos en subproblemas y almacenando sus resultados para evitar cálculos repetidos.\n\nPseudocódigo:\npara i desde 0 hasta n\n dp[i] = valor base\npara i desde 1 hasta n\n dp[i] = mejor(dp[i-1], dp[i-2] + valor)
  8. Optimization Proceso de mejorar el uso de recursos como tiempo o memoria para lograr mayor eficiencia en un programa.\n\nPseudocódigo:\nmedir rendimiento\nidentificar cuello de botella\nreemplazar algoritmo o estructura\nvolver a medir
  9. Big O Notation Notación que describe cómo crece el tiempo o espacio de un algoritmo según el tamaño de la entrada.\n\nEjemplo:\nfor i desde 0 hasta n\n imprimir i\nComplejidad: O(n)
  10. Design Patterns Soluciones reutilizables a problemas comunes de diseño de software. No son código, son estructuras conceptuales.\n\nEjemplo (Singleton):\nsi instancia no existe\n crear instancia\nretornar instancia
  11.  
Advertisement
Add Comment
Please, Sign In to add comment