Guided Notes

Searching: Linear & Binary Search

Linear search on any list, binary search on sorted data, and why O(log n) is so fast.

Linear search

Slide 1 / 5

Linear search checks each element in turn until it finds the target or reaches the end:

def linear_search(arr, target): for i, value in enumerate(arr): if value == target: return i return -1

• Works on any list — sorted or not. • Time O(n): a million items may need a million checks.

For small or unsorted data it's perfectly fine, and it's what Python's in operator does on a list.