ch-ch-changes
Christopher Wright
dhasenan at gmail.com
Wed Jan 28 16:29:47 PST 2009
Andrei Alexandrescu wrote:
> A stride is a great way to get a good pivot into a large array when
> sorting. You sort the stride and then get its median.
I'm not so sure about that. If the array is in fact large, you're
dealing with an external memory situation, and sorting the stride means
you have to touch every single block of the array. If your stride is
even larger than a block, you could change this, but caches are all
designed around sequential access, so they'll defeat you even if you are
that clever.
So, using the stride of an array to find a pivot will double the amount
of time it takes to sort the array in the worst case.
More information about the Digitalmars-d
mailing list