Пузырьковая сортировка не работает.... чего не хватает или не так? кто в силах помочь осознать магию сортировки?
public class Solution {
public static void main(String[] args) throws Exception {
int[] array = new int[]{19,10,16,17,9,3,4,46,97,89,12,45,98,111,42,98,98,-9,71,-150};
sort(array);
}
public static void sort(int[] array) {
boolean isSorted = false;
int N = array.length-1;
while (!isSorted){
isSorted = true;
for (int i = N; i >=1; i--){
for(int j = 0; j < i; j++){
if (array[j] > array[j+1]){
int temp = array[j];
array[j+1] = array[j];
array[j] = temp;
isSorted = false;
}
}
}
System.out.println(Arrays.toString(array));
}
}
}
вывод вообще странный:
[19, 19, 19, 19, 19, 19, 19, 46, 97, 97, 97, 97, 98, 111, 111, 111, 111, 111, 111, 111]
[19, 19, 19, 19, 19, 19, 19, 46, 97, 97, 97, 97, 98, 111, 111, 111, 111, 111, 111, 111]