[prev] [index] [next]

Complexity Example

Sorting an array containing n integer values (SelectionSort):

for (i = 0; i < n-1; ++i) {
    min = i;
    for (j = i+1; j < n; ++j)
        if (a[j] < a[min]) min = j;
    swap(a[i], a[min]);
}

Outer loop: #iter = n-1   Cbody  =  C= + Cfor + Cswap

Inner loop: #iter = n-1 + n-2 + ... + 1 = n(n-1)/2 = (n2-n)/2

Cost:    (n2-n)/2 × C< + n-1 × (C= + Cswap)  ⇒  O(n2)