Skip to content

UnicornTV/fibonacci-ruby

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

##Fibonacci's Code: Recursion and Memoization for Ruby Beginners##

A method for basic Fibonacci term calculation:

def fibonacci(n)
  if n < 2
		n
  else  
		fibonacci(n-1) + fibonacci(n-2)
  end
end

The Bad One; or, two separate methods for fibonacci calculation and fibonacci-value storage:

def fibonacci(n)																	
  return n if n <= 1 															
    fibonacci(n-1) + fibonacci(n-2)												
end

def fib_store(n)
  fib_array = []																
  (0..n).each { |x| fib_array << fibonacci(x) }	
  fib_array
end  

The Good One; or, a method that memoizes Fibonacci values as they are calculated:

@fib_hash = {}

def best_fib(n) 
  @fib_hash[n] = 																	
    if n <= 1																		
      n    																			
    else 
      @fib_hash[n] ||= best_fib(n-1) + best_fib(n-2)								
    end																			     
end

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published