院卒新人サラリーマンのメモ代わり

備忘としてのメモを記載

2018-02-25から1日間の記事一覧

なっとくアルゴリズム

なっとくアルゴリズムを読み始める。 pythonで書かれてるけどrubyで実装してみよう。

upto,downtoの代替

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について

rubyではループ処理にeach,times,upto,downtoなどがある。 forで書けるのに何故あるかについての考え。これらはforよりも抽象度が低いから直感的に把握しやすくなるのだと思う。 例えば for(i:0〜n) { array[i]の処理 } = array.each for(i:0〜n) { n回繰り…

アルゴリズムをはじめよう実装(ruby)

アルゴリズムをはじめようを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 "見…