In your own words, explain what Big-O notation describes and why it matters when comparing algorithms.
Your answer should cover:
- What a statement like "this algorithm is O(n²)" actually claims.
- Why constants and smaller terms are dropped (why O(2n + 10) is just O(n)).
- The common classes — O(1), O(log n), O(n), O(n log n), O(n²) — with a one-line example of each.
- A situation where the Big-O-better algorithm could still be the slower choice in practice.
Write as if explaining to a classmate who has written code before but never analysed it.