Есть ли ошибка в приведенном ниже методе (Структуры данных и алгоритмы Роберта Лафоре)JAVA

Программисты JAVA общаются здесь
Anonymous
Есть ли ошибка в приведенном ниже методе (Структуры данных и алгоритмы Роберта Лафоре)

Сообщение Anonymous »

Приведенный ниже метод взят из книги Роберта Лафоре Структуры данных и алгоритмы. Этот метод используется для пузырьковой сортировки данного массива. nElems — количество элементов в массиве. На мой взгляд, в этом методе есть ошибка, поэтому вместо out > 1 должно быть out > 0. Пожалуйста, помогите внести ясность.

Код: Выделить всё

public void bubbleSort() {
int out, in ;
for (out = nElems - 1; out > 1; out--) // outer loop (backward)
for ( in = 0; in < out; in ++) // inner loop (forward)
if (a[ in ] > a[ in +1]) // out of order?
swap( in , in +1); // swap them
}

Код: Выделить всё

private void swap(int one, int two) {
long temp = a[one];
a[one] = a[two];
a[two] = temp;
}
Я попробовал запустить этот метод, но считаю, что это неправильно.

Подробнее здесь: https://stackoverflow.com/questions/797 ... bert-lafor

Вернуться в «JAVA»