Ruby初心者スレッド Part 11
■ このスレッドは過去ログ倉庫に格納されています
0202デフォルトの名無しさん
2007/03/31(土) 12:25:56require 'benchmark'
include Benchmark
a = (1..10000).map {rand(10000)}
bm(10) do |b|
b.report("Sort") { a.sort {|x,y| x<=>y} }
b.report("Sort!") { a.sort! {|x,y| x<=>y} }
b.report("Sort by") { a.sort_by {|x| x} }
end
user system total real
Sort 1.021000 0.000000 1.021000 ( 1.142000)
Sort! 1.052000 0.000000 1.052000 ( 1.091000)
Sort by 0.070000 0.000000 0.070000 ( 0.080000)
破壊的メソッド「だから」動作が速いという理屈にはならない
単純にどれかが最強というようには決められないのがsort
■ このスレッドは過去ログ倉庫に格納されています