Question

une question que je trouve dans le Wikipedia (je veux apprendre genre des algorithmes très bien). Quoi qu'il en soit, c'est une question - me pourriez-vous expliquer comment je peux le montrer

Exercice:. Montrer que l'algorithme d'insertion Trier (A) fonctionne en temps O (n + I) étant donné que j'est le nombre d'inversions dans le tableau A

Était-ce utile?

La solution

Regardez les sections de Implementation et Analysis de cette .

Considérons l'algorithme présenté il y a:

private static void insertionsort()
{
    int i, j, t;
    for (i=1; i<n; i++)
    {
        j=i;
        t=a[j];
        while (j>0 && a[j-1]>t)
        {
            a[j]=a[j-1];
            j--;
        }
        a[j]=t;
    }
}

Notez que la boucle while se poursuit pour les itérations de v[i], où v[i] est le nombre de renversements causés par l'élément i. Cela devrait faire la preuve, il très facile à comprendre.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top