|
|
|
|
|
by zoomablemind
1440 days ago
|
|
By the way, the TFA algo is equivalent to: for (i=0; i<n; ++i)
for (j=0; j<(i ? i : n); ++j)
if (a[i] < a[j])
swap(a[i], a[j]);
Once the max has been swaped in, further inner iterations past i (the position of max) are redundant.However, we can go even further: for (i=0; i<n; ++i)
for (j=0; j<i; ++j)
if (a[i] < a[j])
swap(a[i], a[j]);
This dispenses with the explicit max swap and simply does progressive insertion.Curiously, in such transformed form the algo echoes the 'selection sort' from my previous post, performs equivalently too (wrt ncmpr, nswp). |
|