It's kind of a trick question :|
It depends on how the data is currently represented, how much space you can allocate, how many parameters are being sorted, etc. You need to know more about the data before you can give the best algorithm, there is no one-size-fits-all.