Skip to main content

Recursive Fibonacci Rabbits with Python

Let's say we have some magical rabbits. These rabbits never die. A pair of rabbits has 3 more pairs of rabbits in every litter, and they start producing litters after one generation. If you start with one pair of rabbits, how many rabbits will you have in 5 generations?

This was the premise of a problem I was working on this week in Python (check out the full problem here: http://rosalind.info/problems/fib/). I had to draw it out on my white board to wrap my head around it:



The idea behind this problem is that finding the number of rabbits in a given generation is similar to calculating a given number in the Fibonacci sequence and that it can be solved recursively, so that's how I did it.

Recursive rabbit solution:


It doesn't really have to be done recursively, though. I was talking through it with Steven, and we realized that the manual approach I had used on the whiteboard was also fairly efficient. Turns out it can be implemented in fewer lines of code as well.

Non-recursive rabbit solution:

Comments

Popular posts from this blog

Trip to Europe 2024

Steven and I got to go to Europe for two weeks. Our main stops were Amsterdam, Brussels, and London. The links in this post take you to videos that go along with the pictures. Amsterdam, Netherlands Flying to Amsterdam from Salt Lake City was over 9 hours and 5,000 miles. Phew. We took trains to get from Schipol Airport to our hotel. It took us a little while to figure out exactly how to get where we were going in our jet-lagged state, but after tapping in and tapping out a few times getting around anywhere in Amsterdam was so easy! Bikes - We loved seeing all the bikes. The Centraal Station bike parking lot was especially amazing with just how many bikes were there. Canal Tour - One of our first activities in Amsterdam was a canal tour. Definitely recommend! It was nice getting an overview of the city and its history. Bike tour - Our favorite part of the whole trip! We zipped along the fields around Amsterdam on electric bikes, saw windmills and electric pumps, and stopped at a fa...

Delicious Crepes

  Delicious Crepes 2 Tbs melted butter 2 eggs 1 cup flour Mix. Then add slowly: 1/2 cup milk 1/2 cup water 1/4 tsp salt

Fidget ball made from pony beads and keychain rings