After 70 long days I have finally completed the Big O Notation section in the CTC book. Wow… That took me an insanely long time but I learned a ton of background knowledge that I never picked up when I started coding with freeCodeCamp. It’s crazy how fast I want to get through the material but my brain can’t keep up. Throughout my learning journey I have tried to emphasize understanding and getting to the bottom of why rather than just accepting “that’s just the way it is”. I still have a long way to go but I am seriously learning and it feels great on some days 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. Completed the last practice question which marked my completing of the Big O Notation section. It has taken me 70 days to get through the section which is crazy but honest. When I didn’t understand something I stopped to learn about it. I constantly had to dive down rabbit holes to learn the background material I needed to comprehend what was going on. Although it has taken way longer than I expected I don’t regret it at all. Btw, I got the last practice question wrong LOL. I forgot that a “Merge Sort” algorithm takes
O(n log n)
time and not justO(n)
time to process which lead to my answer being incorrect. - Started on the “Technical Questions” section of the book “Cracking the Coding Interview” by Gayle Laakmann McDowell. So far it has introduced the core data structures, algorithms, and concepts that are tested in technical interviews. The book strongly suggested that I take the time to write out the code for the algorithms and data structures. Additionally it emphasized the importance of understanding the concepts mentioned. I plan on taking the time to write out each of the algorithms and data structures myself for the first time in my notes before moving on. Just like with Big O Notation, I have a lot of background knowledge that I need to pick up. For now I am starting with a brief introduction to both the
C
andJava
programming languages that I have been meaning to get into for some time now. I feel like I might be cheating if I use languages likePython
orJavaScript
to write out these core data structures / algorithms. Maybe it won’t but this is my plan. LOL
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.