What are data structures, algorithms and Big-O notation?
Data structures organise data for efficient access: arrays, linked lists, stacks, queues, hash maps, trees (including B-trees used by databases), heaps and graphs.
Algorithms are step-by-step procedures: searching, sorting, graph traversal, recursion, dynamic programming and greedy methods.
Big-O describes how time or memory grows with input size n: O(1) constant, O(log n) binary search, O(n) scan, O(n log n) efficient sorting, O(n²) nested loops, O(2ⁿ) exponential.
Practical value: choosing a hash map over a list turns a slow lookup into a constant-time one; understanding B-tree indexes explains why queries speed up; recognising O(n²) loops prevents performance incidents. Measure before optimising — complexity tells you where to look, profiling tells you what to fix.