Q1 What does Big-O notation actually describe?
Show the answer Hide the answer
How the running time grows as the input grows, ignoring constants and smaller terms.
It is about growth, not speed. An O(n) algorithm can easily be slower than an O(n squared) one on small inputs, because the constants it drops can be large. What it tells you is what happens when the input gets big - which is the only thing that survives a change of machine.
What it is really testing. Whether you know what it ignores. The candidate who says "O(1) means fast" has the wrong model and will pick the wrong structure later.