Kleeblattbalken sortieren / BubbleSort (schwierig)

Das Programm speichert die Längen der Balken in einem Array numbers. Es durchläuft diesen Array und vergleicht jedes Element mit dem nächsten. Wenn das nächste grösser ist als das aktuelle, werden diese beiden Elemente vertauscht. Das Durchlaufen des Array wird solange wiederholt, bis keine Vertauschung mehr vorgenommen werden musste.

while (!numbersSorted) {
  numbersSorted = true;
  for (int i = 0; i < numbers.length-1; i++) {
    if (numbers[i] > numbers[i+1]) {
      swap (numbers, i, i+1);
      numbersSorted = false;
      showNumbers (numbers);
    }
  }
}