Sha256: d4af024811e110b1f29981275c8c29e3588a730a1d1e502123bba0d427740aff

Contents?: true

Size: 303 Bytes

Versions: 7

Compression:

Stored size: 303 Bytes

Contents

# Beautiful Code, Chapter 3.
# Produces the expected runtime of Quicksort, for every integer from 1 to N.

runtime: (N) ->
  [sum, t]: [0, 0]
  for n in [1..N]
    sum += 2 * t
    t: n - 1 + sum / n
  t

puts runtime(3) is 2.6666666666666665
puts runtime(5) is 7.4
puts runtime(8) is 16.92142857142857

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
haml-more-0.5.1 vendor/coffee-script/examples/beautiful_code/quicksort_runtime.coffee
haml-more-0.5.0 vendor/coffee-script/examples/beautiful_code/quicksort_runtime.coffee
haml-more-0.4.0 vendor/coffee-script/examples/beautiful_code/quicksort_runtime.coffee
haml-more-0.4.0.d vendor/coffee-script/examples/beautiful_code/quicksort_runtime.coffee
haml-more-0.4.0.c vendor/coffee-script/examples/beautiful_code/quicksort_runtime.coffee
haml-more-0.4.0.b vendor/coffee-script/examples/beautiful_code/quicksort_runtime.coffee
haml-more-0.4.0.a vendor/coffee-script/examples/beautiful_code/quicksort_runtime.coffee