I made a bit of progress but not much. After reading through some more of the comments on the Stack Overflow question I realized I am diving too deep. I determined that the minimum acceptable recursion limit for a simple python program is 4. I believe that there are 2 levels of background code that runs what we write in our file. This works for assignments and calculations but if you want to interact with the operating system to print values there will be an error. It’s like I know what is happening while still not knowing what is happening. I just know that at this point in time, I don’t think I should be trying to breakdown how Python was built and how it interprets and executes my code. Feels like that’s a bit too much of a stray away from Big O notation LOL.
TLDR;
Okay, so here are the highlights of what I did:
- Still reading through the book “Cracking the Coding Interview” by Gayle Laakmann McDowell. I tried to determine what “depth” evaluates to in recursive algorithms. I figured out the baseline so now I can get back to testing my code. Right away I tested out
sum(0)
andsum(1)
both of them ran successfully with a recursion limit set at4
which has me scratching my head. More work and more notes are still needed… Jeez.
Conclusion
That’s all for today. This is my sixth round of the “#100daysofcode” challenge. I will be continuing my work from round five into round six. I am currently working through the book “Cracking the Coding Interview” by Gayle Laakmann McDowell. My goal is to become more familiar with algorithms and data structures. This goal was derived from my goal to better understand operating systems and key programs that I use in the terminal regularly e.g. Git. This goal was in term derived from my desire to better understand the fundamental tools used for coding outside of popular GUIs. This in turn was derived from my desire to be a better back-end developer.
I have no idea if my path is correct but I am walking down this road anyways. Worst case scenario I learn a whole bunch of stuff that will help me out on my own personal projects.