- 401 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 22:49:48 ]
- あ、間違ってた
bm('部分参照'){b=a[1..-1].size} じゃなくて bm('部分参照'){b=a[1..-1]} でした でも、参照した影響っていつまで残るんでしょうか 部分配列を参照して使い捨てた後でもコピーが起こってるみたいなんですけど require 'benchmark' def bm(mes,&b) print mes;puts Benchmark.measure(&b) end a = [1]*10000000 bm('部分削除'){a.delete_at(5)} bm('挿入 '){a.insert(5,1)} bm('部分参照'){a[1..-1]} #使い捨て GC.start bm('部分削除'){a.delete_at(5)} bm('挿入 '){a.insert(5,1)}
|

|