Linear Search

From TRCCompSci - AQA Computer Science
Jump to: navigation, search

Linear search is a very simple search algorithm. In this type of search, a sequential search is made over all items one by one. Every item is checked and if a match is found then that particular item is returned, otherwise the search continues till the end of the data collection.

https://www.youtube.com/watch?v=K2UD7H8m13w&list=PLCiOXwirraUB0HOYmEbmx-7KStKtoXZ6E&index=5

Examples

Here's a simple example in C#: In C#:

 1 string toSearch = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 2 char[] searchArray = toSearch.ToCharArray();
 3 bool found = false;
 4 int i = 0;
 5 
 6 while(found == false && i != searchArray.Length){
 7      if(searchArray[i] == 'W'){
 8         found = true;
 9       } else {
10         i++;
11       }
12 }
13 Console.WriteLine("Found W at position: " + i);

Here's a simple example in Python 3:

 1 ar = [["A", 1], ["B", 2], ["C", 3], ["D", 4], ["E", 5]];
 2 ##Array to be searched
 3 
 4 def linearSearch(arr, toFind):
 5     for x in arr: ##Goes by element 1 by 1
 6         if  x[0] == toFind: return x[1]; ##If you find the item, return the value.
 7     return None; #If you don't, return None for nothing.
 8 
 9 print ( "Looking for 'A'", linearSearch(ar, "A") );
10 print ( "Looking for 'E'", linearSearch(ar, "E") );
11 print ( "Looking for 'l'", linearSearch(ar, "l") );
12 
13 ##Return:
14 ##Looking for 'A' 1
15 ##Looking for 'E' 5
16 ##Looking for 'l' None