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.
This commit is contained in:
		
							parent
							
								
									011f7aeaec
								
							
						
					
					
						commit
						ec7c8516f7
					
				
					 1 changed files with 19 additions and 0 deletions
				
			
		
							
								
								
									
										19
									
								
								scratch/data_structures_and_algorithms/memo.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								scratch/data_structures_and_algorithms/memo.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,19 @@ | |||
| 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)] | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue