Why do algorithms with runtime of O(n) are said to have asymptotic upper bound, when linear functions don't have asymptotes?
Word &quot;asymptotic&quot; is used to emphasize the condition $\exists n_0\in \mathbb{N}$ $\forall n&gt; n_0$ for inequality $0\leqslant f(n)  \leqslant C g(n)$ and generally does not contain any mention of limit or asymptotic. Even well known definition of O big, using $\lim\sup \frac{f}{g}$, have sense only when limit point for O big is not limit point for $g$'s zeros.
As to linear function, for example $f(n)=an+b$, then it easy to find solution for $an+b \leqslant C n $ finding $C&gt;a$ and taking $ n \geqslant n_0= \lfloor \frac{b}{C-a} \rfloor+1 &gt;0$. So we obtain $f(n)=an+b \in O(n)$ i.e. linear function is O-big $n$.