Notes on Pain/Suffering & Big O
Pain and Suffering
The next ten weeks will be incredibly demanding, and I will need to sacrifice other aspects of my well-being most likely. I need to continue to think about what I want and why I am doing this so that I can stay motivated and gritty and push through to tackle every problem that comes my way.
Beginners Guide to Big O
This topic is crucial as it introduces the concept of algorithms, which I know are incredibly common, useful, and powerful in practical implementations of Python and programming generally.
- O(1) is an algorithm that executes in same time/space regardless of data set input size.
- O(N) is an algorithm the output of which will grow linearly and directly proportional to input data set size.
- O(N^2) is an algorithm the output of which is directly proportional to the square of the input data set size.
- O(2^N) is an algorithm with growth doubling as the input data set is added to (i.e. Fibonacci).
- Logarithm has quick growth that then flattens.
This is all bringing flashbacks to my calculus and applied math courses in high school / college.
Things I want to know more about
I’m really eager to see how we will start implementing algorithms in our code.