Basic demostration of complexity of iteration over a list http://ajdiaz.me/doc/2016/02121-iteration-demostration.txt Version: 2016-02-12 During a conversation with my colleages about the complexity of an algorithm which requires to iterate a long list of elements, we talk about the posibility of that algorithm was squared time complexity due to the way tht it was implemented, but we stop a while thinking if any iteration over all elements of any set (or sorted set) could be less than O(n). It's obvious that is not possible, because you need to read all elements in order to get all elements, but I realized that, actually, I don't have any proof of that, just common sense. This demonstration try to find a mathematical proof of that. Hypothesis a) Let ℕ = {x ∈ ℤ, x > 0} b) Let L = {x₁..xₙ₊₁}, |L| = n c) Let f: ℕ → S ⊆ L / f(1, t) = {x₁..xₜ}, t > 0 and t < n+1 Demostration by induction - Demostration for f(1) f(1) = {x} ⇒ O(f(1)) = O(1) - Supposition for f(k) f(k) = O(k) - Demostration for f(k+1) f(k+1) = {x₁..xₖ₊₁} = {x₁..xₖ} ∪ {xₖ₊₁} {Leibniz} = f(k) ∪ f(k+1) {Landau} = max({O(k), O(k+1)}) = O(n) Conclussion Iteration over all elements of a set (sorted or not), requires a O(n) of time complexity in all cases.