Week 7/8

    The concept of big O has been the most difficult part of this course so far. I've found that after the proofs, this course has gotten a bit difficult to follow. For a solid week, I only had a (false) intuitive understanding of big O, which went something like this: f(n) is in big O of g(n) = n^2 if for all n, f(n) < or = n^2. Of course now I realize that this is hilariously wrong.

    The actual definition is:






 This basically describes the growth rate of the function in terms of simpler functions. The main purpose of big O in computer science is to express the run-time of programs relative to the input. So in CSC165 we are expected to provide a function for the run-time of a program, and then prove that it is in the big O of some other function.

    The tutorials have been especially helpful in these types of problems, as they go through the solutions in a very detailed manner, explaining every step. The lectures seem to go through examples very quickly which often leaves me confused, although it might just be something about lecture slides that put me to sleep.

No comments:

Post a Comment