tvl-depot/scratch/data_structures_and_algorithms/memo.py
William Carroll ec7c8516f7 Implement part 1/3 for "Memo"
After hearing from a Jane Street recruiter, I decided to dust off some of the
DS&As knowledge. I found this article online, which outlines an example problem
called "Memo":

https://blog.janestreet.com/what-a-jane-street-dev-interview-is-like/

Here's part 1 of the solution in Python.
2020-07-01 14:40:40 +01:00

19 lines
338 B
Python

import time
import random
memo = {}
def f(x):
if x in memo:
print("Hit.\t\tf({})".format(x))
return memo[x]
else:
print("Computing...\tf({})".format(x))
time.sleep(0.25)
res = random.randint(0, 10)
memo[x] = res
return res
[f(random.randint(0, 10)) for _ in range(10)]