>>950
>948ではありませんが、二度手間ではないですよ。
if文は負荷が大きい(当然ファイル数が多いほど高負荷になる)から
繰り返し処理の中ではif文で比較しないで配列に要素を追加するだけ。
繰り返しが終わったら配列をソートで比較終了。
つまり、10000ファイルあった場合、9999回if分岐するか
10000要素の配列をつくって1回ソートするか、ですね。
CPU負荷とメモリ消費と処理速度等の兼ね合いで、
メモリをちょっとだけ使ってCPU負荷を少なく抑えて
その結果速いであろう>948の方法を良しとするのが一般的です。
一概には言えないしアフォかとは思わないけどね。
アフォほどファイルをつくって両方の処理速度でも測ってみて
何がどう違うか観察するとよくわかるかも