**O(log n)** is a time complexity notation which says that algorithm reduces search space by half on each iteration.
Each division is considered as step, where each step takes constant about on time.
`Total execution time = step amount * constant execution time`
Even though the data set grows significantly, the execution time increases slower than with linear time complexity.
![[logarithmic.png]]
**Constraints:**
- Dataset must be sorted
- Each element of dataset must be randomly accessible (i.e. you can jump directly to the element at any given position, without iteration)
### See also
1. [[Linear Time Complexity - O(n)]]
### Reference
1.