1. 7kaji

    サンプル数多くした

    7kaji
Changes in body
Source | HTML | Preview
@@ -1,31 +1,33 @@
```ruby
require 'benchmark'
class Array
def quick_sort
return self if self.length <= 1
pivot = pop
left, right = partition { |e| e < pivot }
push pivot
left.quick_sort + [pivot] + right.quick_sort
end
end
-# ベンチマークとってみた
+sample = (0..10000).sort_by { rand }
+
+#ベンチマークとってみた
puts Benchmark::CAPTION
-puts Benchmark.measure { [1,3,99,2,54,22,0,6].quick_sort }
-puts Benchmark.measure { [1,3,99,2,54,22,0,6].sort }
+puts Benchmark.measure { sample.quick_sort }
+puts Benchmark.measure { sample.sort }
```
```
- user system total real
- 0.000000 0.000000 0.000000 ( 0.000017)
- 0.000000 0.000000 0.000000 ( 0.000007)
+ user system total real
+ 0.040000 0.000000 0.040000 ( 0.035148)
+ 0.000000 0.000000 0.000000 ( 0.001645)
```
Array#sortの実装はこちら(C言語)
https://github.com/ruby/ruby/blob/trunk/array.c
(rb_ary_sort_bangメソッドで実装されているっぽい)
C言語難しくてよくわからない(´・ω・`)