Class 1
Pain vs. Suffering
This reading really put me in the mindset that I need to remember to keep myself in for the next ten weeks. 301 was one of the hardest things I’ve ever done, and I expect 401 pulls even fewer punches. The fact that it is wildly hard, demeaning, and exhausting for everyone is a weirdly comforting thought. Again, the mentality that i’ve heard and really liked about this program is that you only really fail when you give up.
Big O Notation
Big O describes the worst case scenario of the execution time and spaced used by an algorithm.
Different levels of O:
-
O(1): This is an algorithm that will always execute in the same time or space regardless of the size of the input data set.
-
O(N): This is an algorithm that grows linearly as the size of the input data set grows. Big O will always assume the worst in terms of size and time needed, so you can have a worst case scenario benchmark.
-
O(N2): This represents an algorithm whose performance is directly linked to how large the size of the input is. This is common in nested iterations over the data set, and will raise the exponent in the factor of N by one for each time it has to go into a deeper nest.
-
O(2N): This denotes when a algorithm whose growth doubles every time a new input is added to the input data set. This is an exponential growth model.
Things I would like to know more about
I really didn’t understand the logarithms section of the reading. I think I understand how it parses through the information of a data set, but I’m not really too clear on how that factors into working through an algorithm.