Liczba swapów w Bubble Sort

Mam wersję sortowania bańki:

int i, j;  

for i from n downto 1 
{
    for j from 1 to i-1 
    { 
        if (A[j] > A[j+1])
            swap(A[j], A[j+1]) 
    } 
}

Chcę obliczyć oczekiwaną liczbę swapów przy użyciu powyższej wersji sortowania bąbelkowego. Metoda używana przeze mnie jest pokazana poniżej:

// 0 based index

float ans = 0.0;

for ( int i = 0; i < n-1; i++ )
{
    for ( int j = i+1; j < n; j++ ) {

        ans += getprob( a[i], a[j]); // computes probability that a[i]>a[j].
    }
}

Czy idę właściwą drogą, czy coś mi brakuje?

questionAnswers(3)

yourAnswerToTheQuestion