Сортировка слиянием подсчитывает количество свопов и сравниваетJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Сортировка слиянием подсчитывает количество свопов и сравнивает

Сообщение Anonymous »

У меня есть существующий код, для которого мне нужно добавить счетчик обмена и сравнения. На данный момент я считаю, что подсчеты у меня правильные, однако я не могу заставить вывод не отображать цикл каждого обмена.

public void mergeSort(int[] a, int howMany) {

if (a.length >= 2) {
// split array into two halves
int[] left = Arrays.copyOfRange(a, 0, a.length/2);
int[] right = Arrays.copyOfRange(a, a.length/2, a.length);

// sort the two halves
mergeSort(left,howMany);
mergeSort(right, howMany);

// merge the sorted halves into a sorted whole
merge(a, left, right);

}
}

// Merges the left/right elements into a sorted result.
// Precondition: left/right are sorted
public static void merge(int[] result, int[] left,
int[] right) {
int i1 = 0; // index into left array
int i2 = 0; // index into right array
int compCount = 0;
int swapCount = 0;
for (int i = 0; i < result.length; i++) {
compCount++;
if (i2 >= right.length ||
(i1 < left.length && left[i1]

Подробнее здесь: https://stackoverflow.com/questions/299 ... d-compares
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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