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

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

Сообщение Anonymous »

У меня есть этот существующий код, который мне нужно добавить своп и сравнить счетчик. До сих пор я считаю, что у меня есть подсчет правильно, однако я не могу получить вывод, чтобы не отображать цикл каждого свопа. < /P>

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

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