2018-02-25から1日間の記事一覧
なっとくアルゴリズムを読み始める。 pythonで書かれてるけどrubyで実装してみよう。
Numericクラスにこんなメソッド追加したらどう class Numeric def to(num, &block) if self > num (num..self).reverse_each(&block) else (self..num).each(&block) end end end 5.to(8){|i| puts i} #=> 5,6,7,8 8.to(5){|i| puts i} #=> 8,7,6,5 #ちなみ…
rubyではループ処理にeach,times,upto,downtoなどがある。 forで書けるのに何故あるかについての考え。これらはforよりも抽象度が低いから直感的に把握しやすくなるのだと思う。 例えば for(i:0〜n) { array[i]の処理 } = array.each for(i:0〜n) { n回繰り…
アルゴリズムをはじめようをrubyで実装 #二分探索 def binary_search(array, serch_num) head = 0 tail = array.length - 1 while head <= tail center = (head+tail) /2 case array[center] <=> serch_num when -1 head = center +1 when 0 return puts "見…