@lichtjaeger Neither am I. But the way I see O(n) terminology is like this: In very-very simple/brief form, an O(n) solution would be the one where, even for the worst case scenario, the maximum number of iterations of a loop would be equal to the number of inputs(n) . For eg. a loop inside a loop, would be a O(n^2) solution . Same logic applies for both time-complexities and memory complexities. So, if for 1 input, the program produces the output in 4s(assume) and consuming 4KB(assume) of memory, then if 10 inputs are fed, if the program has O(n) complexity, it would produce the output in a maximum of 40s and would consume 40KB of memory at most. Hope that gives you an idea and clarifies a bit.