# Linear Search vs Binary Search

Prerequisite:

A linear search scans one item at a time, without jumping to any item .

- The worst case complexity is O(n), sometimes known an O(n) search
- Time taken to search elements keep increasing as the number of elements are increased.

A binary search however, cut down your search to half as soon as you find middle of a sorted list.

- The middle element is looked to check if it is greater than or less than the value to be searched.
- Accordingly, search is done to either half of the given list

**Important Differences**

- Input data needs to be sorted in Binary Search and not in Linear Search
- Linear search does the sequential access whereas Binary search access data randomly.
- Time complexity of linear search -O(n) , Binary search has time complexity O(log n).
- Linear search performs equality comparisons and Binary search performs ordering comparisons

Let us look at an example to compare the two:

**Linear Search to find the element “J” in a given sorted list from A-X**

**Binary Search to find the element “J” in a given sorted list from A-X**

You may also see

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

## Recommended Posts:

- Why is Binary Search preferred over Ternary Search?
- Meta Binary Search | One-Sided Binary Search
- Interpolation search vs Binary search
- Linear Search
- C/C++ Program for Linear Search
- Java Program for Linear Search
- Linear search using Multi-threading
- Repeatedly search an element by doubling it after every successful search
- Binary Search
- Binary Search in PHP
- Binary Search in Java
- The Ubiquitous Binary Search | Set 1
- Binary Search a String
- Variants of Binary Search
- Binary Search using pthread