There needs to be some measurement that tells you how efficient linear search is. You already learnt about this in the previous module on Algorithm Analysis. So, let’s now use it to analyse linear search.
So now we'll look at the time analysis of the linear search algorithm. So you remember we took an array like this the last time we were discussing about linear search. So if I have to find suppose an element x here and I take my x equals to six. Now, in the very first step itself, I would see that this six equal to this six. So I found my element immediately. And how many steps did it take for me to find it? It took me exactly one number of comparisons to find that six exists here in this array. So this is what we call the best case scenario in which it takes the least number of comparisons to find a given element. Now, suppose I had to find an element y here, and suppose y was equal to nine. So I will sequentially compare nine to each and every element here and it is only when I reach the last of this array that I would see that I have finally found my element nine. So in this case, how many steps did it take for me to find nine? It took me exactly five number of steps to do so. So this would count as something which I call as my worst case, which requires the most number of comparisons. Now consider another case. Suppose I have to find an element z here and I take my z equals to one. Now again, for finding one here in this array, I would need to compare it with all these elements in this array and this would require a total number of five comparisons. So again, these two would come under what I called as my worst case scenarios. So in best cases such as this one, I require exactly one number of comparisons. So I would say that my time complexity in best case scenario is equal to order of one. And for these two cases I would say that they come under the worst case.
And how many number of comparisons do they need? Well, I used five comparison s for both of these cases where five is the number of elements in this array. So if I have an array of n number of elements, I would need n number of steps in my worst case scenario. So in my worst case my complexity would be order n. So.
The linear search algorithm is analyzed for its time complexity.
The best case scenario occurs when the element to be found is the first element in the array. It takes only one comparison to find the element.
The worst case scenario occurs when the element to be found is the last element in the array or not present in the array at all. It takes n number of comparisons to find the element where n is the number of elements in the array.
In the worst case scenario, the time complexity is order and in the best case scenario, it is order of one.
The time complexity of a linear search algorithm depends on the number of elements in the array.
Learn about linear search algorithm's time complexity in its best and worst case scenarios. Discover how many comparisons it takes to find the element to be searched, and how the number of elements in the array impacts the time complexity. Find out more about the order of one and order n in the time complexity of linear search algorithm.
As discussed, for an array with n entries, the algorithm takes n steps in the worst case. Hence, it follows O(n). In the video below, you will see how linear search fares if you’re looking to search for a card of your choice from an entire deck.
So, to search for the jack of spades, which was at the end of the list, it took as many steps as the number of cards in the deck. Now, before we move on to the next search algorithm, let’s learn about something called divide and conquer in the next segment, this helps in increasing the efficiency of searching.