>>328
(3) は安定ソートにするためでは?
もっともこのプログラムのように並べ替えるデータがソートキー自体しかないような場合にはほとんど意味はないが。
ふつう現実のソートではソートキーとそれ以外のデータを組にしたものを並べ替えるので意味が出てくる。

(5) はなんかもう少し条件がいる気がするけど。
バケットソートや分布数え上げソートの場合は違ってくるのでは。