Quick Answer
To discuss time and space complexity in English: say the notation, name what drives it, and explain the trade-off in one sentence. 'This runs in O(n log n) because each element is touched once per level of the recursion tree. The space is O(n) for the call stack.'
Why complexity talk matters in English interviews
Almost every coding interview ends with "what's the time and space complexity?" Non-native engineers often know the answer but freeze on the English to explain it clearly.
Saying "O of n" is not enough. Interviewers expect you to say what n represents, what operation drives the complexity, and what the memory cost is - all in plain spoken English.
Key vocabulary
| Term | Plain meaning | Say it in an interview |
|---|---|---|
| Time complexity | How runtime grows with input size | "The time complexity is O(n) because we iterate through the array once." |
| Space complexity | How memory grows with input size | "The space complexity is O(1) - I'm not allocating extra storage." |
| Auxiliary space | Extra memory beyond the input | "Auxiliary space is O(n) for the hash map." |
| Amortised | Average cost across operations | "Amortised O(1) per insertion - the occasional resize is rare." |
| Dominant term | The part that matters at scale | "The dominant term is n2 so the lower-order n is irrelevant at scale." |
| Best / worst / average case | Input-dependent performance | "Worst case is O(n) when the element is at the end." |
ESL phrases and transitions
Stating complexity
- "The time complexity is O(n) because we visit each node exactly once."
- "Space is O(log n) for the recursion stack - the depth of the tree."
- "This is O(n2) in the worst case because of the nested loop."
Explaining the trade-off
- "I can reduce time to O(n log n) but that requires O(n) extra space for the sorted copy."
- "The brute force is O(n2) time and O(1) space. The hash map approach is O(n) time but O(n) space."
- "Given the constraints, I'd take the space hit for the faster time complexity."
Key English language pitfalls
| Pitfall | Sounds like | Say instead |
|---|---|---|
| Just saying "O(n)" with no explanation | Memorised, not understood | Follow with: "because we do one pass through the input." |
| Confusing time and space | Shows unclear thinking | State each separately: time first, space second. |
| Saying "it's fast" | Vague | Say the notation and what drives it. |
| Ignoring space when you have recursion | Incomplete answer | Always mention call stack depth for recursive solutions. |
Common English mistakes
| Mistake | Why it hurts | Fix |
|---|---|---|
| Saying "the complexity is good" | No information given | Always give the Big O notation. |
| Only giving time, not space | Feels incomplete | Say both, even if one is O(1). |
| Forgetting to define n | Ambiguous | Say "where n is the number of elements in the array." |
What the interviewer is testing
Complexity questions test whether you can reason about your code's behaviour at scale, not just make it correct. Interviewers want to hear you explain the why - not just quote notation.
They also test whether you can navigate the time/space trade-off in spoken English and defend a choice when pushed.
How to introduce complexity analysis
Standard opening
- "Let me now analyse the time and space complexity."
- "For time: the outer loop runs n times and the inner operation is O(1), so overall O(n)."
- "For space: I'm using a hash map that can store up to n entries, so O(n) auxiliary space."
Complexity analysis walkthrough
| Notation | Say it as | Explain it as |
|---|---|---|
| O(1) | "constant time" | "The number of operations doesn't change with input size." |
| O(log n) | "logarithmic time" | "We halve the search space each step - typical of binary search." |
| O(n) | "linear time" | "One pass through n elements." |
| O(n log n) | "n log n" | "Each of n elements is processed log n times - typical of merge sort." |
| O(n2) | "quadratic time" | "A nested loop over n elements - each element paired with every other." |
| O(2n) | "exponential time" | "Typical of brute-force recursion that branches twice at every step." |
Weak vs strong answers
Weak
Time is O(n), space is O(n).
Strong
Time is O(n) - we do one pass through the array, and each hash map lookup is O(1), so the overall time is linear in the input size. Space is O(n) in the worst case because the hash map stores up to n key-value pairs. If space is a constraint I could use a two-pointer approach on a sorted copy - that's O(n log n) time but reduces auxiliary space to O(1).
How to say Big O notation out loud
| Written | Say |
|---|---|
| O(1) | "order one" or "constant" |
| O(log n) | "order log n" or "log n" |
| O(n) | "order n" or "linear" |
| O(n log n) | "n log n" |
| O(n2) | "order n squared" or "quadratic" |
| O(n + m) | "order n plus m" - when two inputs matter |
| O(V + E) | "order V plus E" - vertices plus edges for graphs |
Follow-up questions you will get
Expect these
- "Can you improve the time complexity?"
- "Is there a way to solve this in O(1) space?"
- "What's the average case vs worst case here?"
- "Would your solution still work with 10 billion elements?"
Practice drill
Take any solution you've written recently. Explain its time and space complexity out loud in three sentences: state the notation, explain what drives it, then state the trade-off if a better option exists.
Do this for five different algorithms - sorting, searching, graph traversal, dynamic programming, and string manipulation.
Answer frameworks you can reuse
State time �' explain the driver �' state space �' explain what takes the memory �' name the trade-off if relevant.
Template: "Time is O([notation]) because [what causes the cost]. Space is O([notation]) because [what takes the memory]. I could reduce [time/space] by [change] at the cost of [trade-off]."
FAQ
Questions
More questions? Email us at contact@mocklyenglish.com.