Algorithmus von InsertSort
- Lenguaje dominante
- C#
- Estrellas
- 1
- Forks
- 0
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
https://github.com/aheil/algdat/blob/06b7b908302611c43cddae686f9107f5aa84e3be/sorting/insertsort/Program.cs#L19-L31
Ist glaube ich etwas optimaler, da nicht getauscht wird sondern größere Werte nach rechts gerückt werden:
```
int temp;
// Für jeden Eintrag im Array (außer der erste) ...
for (int index = 1; index < array.length; index++) {
// ... merke den Wert ...
temp = array[index];
int j = index;
// ... und rücke jeden Wert links davon, der größer ist, um ein Feld nach rechts ...
// ... (das Feld des gemerkten Wertes wird dabei überschrieben) ...
while (j > 0 && array[j - 1] > temp) {
array[j] = array[j - 1];
j--;
}
// ... und setze den gemerkten Wert an die Stelle, an der kein Wert mehr nach rechts gerückt wird
array[j] = temp;
}
```
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Evaluación
Este issue todavía no se ha evaluado.