Ordenamiento por inserción en C
Ordenar en el lugar haciendo crecer un prefijo ordenado.
void insertion_sort(int *items, int n) {
for (int i = 1; i < n; i++) {
int key = items[i];
int j = i - 1;
while (j >= 0 && items[j] > key) {
items[j + 1] = items[j];
j--;
}
items[j + 1] = key;
}
}
Cómo funciona
- Cada
keyse saca del arreglo. - Los elementos mayores se corren a la derecha para hacer espacio.
- La clave cae en su posición ordenada.
Palabras clave y builtins usados aquí
forintvoidwhile
El intento, en números
- Líneas
- 11
- Caracteres a escribir
- 196
- Tokens
- 86
- Ritmo de tres estrellas
- 95 tpm
Al ritmo de tres estrellas de 95 tokens por minuto, este intento toma unos 54 segundos.
Paso 2 de 5 en Ordenamiento y búsqueda; paso 2 de 20 en Estructuras de datos y algoritmos.