Не могу понять в чем разница между for (int j = i + 1; j < array.length - 1; j++) и for (int j = array.length - 1; j > i; j--). В консоле сортирует верно с обоими вариантами, но валидатор принимает только с for (int j = array.length - 1; j > i; j--). Есть идеи?
public static void sort(String[] array) {
//напишите тут ваш код
String tmp = null;
// for (int i = 0; i < array.length; i++){
// for (int j = i + 1; j < array.length - 1; j++){
// if (isGreaterThan(array[j], array[i])){
// tmp = array[j];
// array[j] = array[i];
// array[i] = array[j];
// }
// }
// }
for (int i = 0; i < array.length; i++){
for (int j = array.length - 1; j > i; j--){
if (isGreaterThan(array[i], array[j])){
tmp = array[i];
array[i] = array[j];
array[j] = tmp;
}
}
}
}
Maksym Lysikov
25 уровень
for (int j = i + 1; j < array.length - 1; j++) vs for (int j = array.length - 1; j > i; j--)
Обсуждается
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Александр
14 сентября 2019, 20:18
и загоняйте, пожалуйста, код в соответствующие теги, плиз
0
RiccioMaster
12 сентября 2019, 20:18
Это вариант сортировки пузырьком, верно?
Предположим, что длинна массива равна 10, соответственно, последний индекс - 9.
+2