> For the complete documentation index, see [llms.txt](https://fsm.gitbook.io/algo/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://fsm.gitbook.io/algo/linear-search-sequential-search.md).

# Linear Search/ Sequential Search

### Linear/Sequential Search

In computer science, linear search, also known as sequential search, is a method for <mark style="color:red;">locating</mark> a specific value in a list that involves verifying each of the list's members one by one until the desired one is discovered.&#x20;

The <mark style="color:red;">simplest</mark> search algorithm is linear search. It's a type of <mark style="color:red;">brute-force</mark> search with a twist. Its worst-case cost is proportional to the list's amount of items.

### The complexity of Linear Search Technique

* **Time Complexity:** <mark style="color:red;">O(n)</mark>
* **Space Complexity:** <mark style="color:red;">O(1)</mark>

### Linear/ Sequential Search - Algorithm

<div align="center"><img src="/files/ZjpW66gFOjkJBTsIjheO" alt=""></div>

### Linear/ Sequential Search - Example

Search for <mark style="color:red;">**1**</mark> in the given array  ![](/files/ZzWFzZuNHNzLK2MdWSji)

Comparing the value of <mark style="color:red;">ith</mark> index with element to be search one by one until we get searched element or end of the array.

![Element found at ith index, i=3](/files/Tzn57PuVCPaZ73GRe9tG)

### Example

```
#include<iostream>
using namespace std;

int linSearch(int a[], int size, int key) {
   for(int i = 0; i<size; i++) {
      if(a[i] == key) 
         return i; 
   }
   return -1; 
}

int main() {
   int n, skey, loc;
   cout << "Enter number of items: ";
   cin >> n;
   int arr[n]; 
   cout << "Enter items: " << endl;

   for(int i = 0; i< n; i++) {
      cin >> arr[i];
   }

   cout << "Enter which number to search in the list: ";
   cin >> skey;

   if((loc = linSearch(arr, n, skey)) >= 0)
      cout << "Item found at location: " << loc << endl;
   else
      cout << "Item is not found in the list." << endl;
}
```

### Output

```
Enter number of items: 5
Enter items:
2 9 3 1 8
Enter which number/ to search in the list: 1
Item found at location: 3
```
