The **Big-O** notation describes the performance of an algorithm in terms of number of elements in a data structure. Since Collection classes are actually data structures, we usually tend to use Big-O notation to chose the collection implementation to use based on time, memory and performance.

Example 1: ArrayList get(index i) is a constant-time operation and doesn’t depend on the number of elements in the list. So it’s performance in Big-O notation is O(1).

Example 2: A linear search on array or list performance is O(n) because we need to search through entire list of elements to find the element.

1. http://www.geeksforgeeks.org/analysis-of-algorithms-set-1-asymptotic-analysis/

2. http://www.geeksforgeeks.org/analysis-of-algorithms-set-2-asymptotic-analysis/

3. http://www.geeksforgeeks.org/analysis-of-algorithms-set-3asymptotic-notations/