package codeabb;
import java.util.*;
public class Bsort {
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
int num = in.nextInt();
int arr[] = new int[100];
int swap = 0;
int pass = num-1;
for( int i = 0; i < num; i++) {
arr[i] = in.nextInt();
}
for( int i = 0; i < num-1; i++) {
pass--;
for( int j = i+1; j < num; j++) {
int temp;
if(arr[i] > arr[j]) {
swap++;
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
System.out.print(pass + " "+swap);
}
}
我正在尝试输出对数组进行排序时的交换次数和通过次数。通过数量是我估计的array-1总数吗?因此,我已对此进行了初始化,并在每次执行交换时都扣除了此费用,因为一旦进行交换,便进行了下一次传递。但是输出不正确。有人可以帮我吗?