From 9ea52002a73f5fa8026445663c3f889a5f80ecb5 Mon Sep 17 00:00:00 2001 From: Marc Michalsky Date: Fri, 8 May 2020 10:21:41 +0200 Subject: [PATCH] Algorithmus optimiert while-Schleife entfernt --- src/gfn/marc/Main.java | 45 +++++++++++++++--------------------------- 1 file changed, 16 insertions(+), 29 deletions(-) diff --git a/src/gfn/marc/Main.java b/src/gfn/marc/Main.java index f4126a4..b08b959 100644 --- a/src/gfn/marc/Main.java +++ b/src/gfn/marc/Main.java @@ -16,41 +16,28 @@ public class Main { public static int[] sortiereArray(int[] array) { - boolean fertig = false; - int temp = 0; + int temp; int zaehlerPruefungen = 0; int zaehlerTauschvorgaenge = 0; - while (!fertig) { + for (int i = 0; i < array.length - 1; i++) { + zaehlerPruefungen++; + if (array[i] > array[i + 1]) { + temp = array[i]; + array[i] = array[i + 1]; + array[i + 1] = temp; + zaehlerTauschvorgaenge++; - for (int i = 0; i < array.length - 1; i++) { - - zaehlerPruefungen++; - fertig = true; - - if (array[i] > array[i + 1]) { - fertig = false; - temp = array[i]; - array[i] = array[i + 1]; - array[i + 1] = temp; - zaehlerTauschvorgaenge++; + for (int j = i; j > 0; j--) { zaehlerPruefungen++; - - for (int j = i; j > 0; j--) { - if (array[j] < array[j - 1]) { - temp = array[j]; - array[j] = array[j - 1]; - array[j - 1] = temp; - zaehlerTauschvorgaenge++; - } else { - break; - } + if (array[j] < array[j - 1]) { + temp = array[j]; + array[j] = array[j - 1]; + array[j - 1] = temp; + zaehlerTauschvorgaenge++; + } else { + break; } - - } - - if (i == array.length - 1) { - fertig = true; } } }