LoginSignup
13
14

More than 5 years have passed since last update.

rubyで高階関数が思うようにいかないんじゃよ。。。

Posted at

最近rubyに可能性を感じ
--lambdaの中にifとか滅茶苦茶突っ込めるのって面白いんじゃないか!?--
pythonから改宗中。。。

調べ方が悪いのか、関数を引数に渡したいのだが上手いこといかない。
( ブロックを渡すというのはヒットする。違う、関数を渡したいんだ!!! )

def quick_sort( seq )
    # do quick sort
end

# 引数にとった関数の実行時間を計測
def measure_time( seq, func )
    t0 = Time.now
    func.call( seq )
    t1 = Time.now
    p "#{t0 - t0} sec"
end

list = [3,2,1]
# レッツゴー
measure_time( list, quick_sort  )
# in `quick_sort': wrong number of arguments (0 for 1) (ArgumentError)

引数が足りないって。。。orz
す、全てが、、、


/   //   /   //    ______     /   //   /
 / //   /|   r'7\ ,.ヘ‐'"´iヾ、/\ニ''ー- 、.,   /    /
  /   / |  |::|ァ'⌒',ヽ:::ヽrヘ_,,.!-‐-'、二7-ァ'´|、__
`'ー-‐''"   ヽ、_'´  `| |:::::|'"       二.,_> ,.へ_
         /  //__// / / /      `ヽ7::/
 か っ す  |  / // メ,/_,,. /./ /|   i   Y   //
 ァ  て べ.  |'´/ ∠. -‐'ァ'"´'`iヽ.// メ、,_ハ  ,  |〉
  |  約 て  ヽ! O .|/。〈ハ、 rリ '´   ,ァ=;、`| ,ハ |、  /
  |  束 が   >  o  ゜,,´ ̄   .  ト i 〉.レ'i iヽ|ヽ、.,____
  |  し  オ  /   ハ | u   ,.--- 、  `' ゜o O/、.,___,,..-‐'"´
  |  た  ブ  |  /  ハ,   /    〉 "从  ヽ!  /
  |  じ  ジ  |,.イ,.!-‐'-'、,ヘ. !、_   _,/ ,.イヘ. `  ヽ.
 ッ .ゃ .ェ   |/     ヽ!7>rァ''7´| / ',  〉`ヽ〉
 ! ! な  ク   .',      `Y_,/、レ'ヘ/レ'  レ'
   い  .ト    ヽ、_     !:::::ハiヽ.   //   /
   で   だ   ./‐r'、.,_,.イ\/_」ヽ ',       /  /
   す      /    `/:::::::/ /,」:::iン、 /    /
          〈  ,,..-‐''"´ ̄ ̄77ー--、_\.,__  /
      ,.:'⌒ヽ ´         | |  , i |ノ   `ヾr-、

(全てを棚に上げてのヤケクソ)

ちなみにpythonだとこう書ける。

def quick_sort( seq ):
    # do quick sort
    return

def measure_time( func, seq ):
    import time
    start = time.clock()
    func( seq )
    end = time.clock()
    print str( end-start )

list=[3,2,1]
measure_time( quick_sort, list )

ううむ。

13
14
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
14