Introducción al algoritmo de ordenación por inserción

Introducción al algoritmo de ordenación por inserción

El ordenamiento por inserción es una técnica que funciona utilizando una sublista ordenada y agregando continuamente un valor desde la lista sin ordenar hasta que se ordena toda la lista.





El algoritmo comienza con el primer elemento de la lista como sublista ordenada. Luego compara el siguiente número con el primero. Si es mayor, se inserta en el primer índice. De lo contrario, se deja en su índice.





Luego, el tercer valor se compara con los otros dos y luego se inserta en el índice correcto. Este proceso continúa hasta que se ordena toda la lista.





Una mirada más cercana al tipo de inserción

Es posible que la descripción anterior no tenga sentido para usted. Un ejemplo debería ayudarlo a comprender mucho mejor.

Suponga que tiene una lista: [39, 6, 2, 51, 30, 42, 7].



El algoritmo identifica 39 como el primer valor de la sublista ordenada. Luego, la evaluación pasa a la segunda posición.

Relacionado: Programación dinámica: ejemplos, problemas comunes y soluciones





A continuación, se compara 6 con 39. Dado que 6 es menor que 39, se inserta 6 en la primera posición y 39 en la segunda. El nuevo orden de la lista es posterior al primer pase ahora:

[6, 39, 2, 51, 30, 42, 7]





La evaluación ahora pasa a la tercera posición. 2 se compara con los dos últimos números y luego se inserta en la posición correcta. El nuevo orden de la lista después del segundo paso es ahora:

[2, 6, 39, 51, 30, 42, 7]

Para el tercer paso, el orden de la lista es:

[2, 6, 39, 51, 30, 42, 7]

El proceso se repite hasta que se ordena toda la lista.

Vea el diagrama a continuación que resume estas operaciones:

Análisis de algoritmos

La complejidad temporal de la ordenación por inserción es O (n2), al igual que ordenamiento de burbuja . El número de comparaciones en el peor de los casos es la suma de todos los números enteros de 1 a (n-1), lo que da una suma cuadrática.

Implementación de código

El código de Python y Java a continuación muestra cómo puede implementar el método de ordenación por inserción.

Pitón:

|_+_|

Java:

|_+_|

Mejor codificación con pseudocódigo

Los ejemplos de código anteriores se proporcionaron sin ningún pseudocódigo al que pueda hacer referencia para escribir este algoritmo en otros idiomas. A la mayoría de los programadores (incluido el autor) les gusta ejecutar sus teclados después de que les digan 'susurros' sobre cómo funciona un programa.

Desafortunadamente, este enfoque es propenso a errores a medida que la lógica del programa se vuelve más complicada. ¿Cómo le gustaría subir de nivel su juego de programación aprendiendo a usar el pseudocódigo?

Cuota Cuota Pío Correo electrónico ¿Qué es el pseudocódigo y cómo lo convierte en un mejor desarrollador?

¿Tiene dificultades para aprender a programar? Familiarícese con el código aprendiendo pseudocódigo. Pero, ¿qué es el pseudocódigo y realmente puede ayudar?

Leer siguiente
Temas relacionados
  • Programación
  • Java
  • Pitón
  • Tutoriales de codificación
Sobre el Autor Jerome Davidson(22 Artículos publicados)

Jerome es redactor de MakeUseOf. Cubre artículos sobre programación y Linux. También es un entusiasta de la criptografía y siempre está al tanto de la industria de la criptografía.

libros electrónicos gratuitos para descargar y leer
Más de Jerome Davidson

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse