SEARCHING Reference
SEARCHING Reference
1. Linear Search
2. Binary search
Algorithm
Linear Search ( Array A, Value x)
Step 1: Set i to 1
Step 2: if i > n then go to step 7
Step 3: if A[i] = x then go to step 6
Step 4: Set i to i + 1
Step 5: Go to Step 2
Step 6: Print Element x Found at index i and go to step 8
Step 7: Print element not found
Step 8: Exit
Pseudocode
procedure linear_search (list, value)
end if
end for
end procedure
Limitation: If the size of the array is large then it consumes much time,
because as it compares the given element with every element of the array.
Binary search looks for a particular item by comparing the middle most
item of the collection. If a match occurs, then the index of item is returned. If
the middle item is greater than the item, then the item is searched in the sub-
array to the left of the middle item. Otherwise, the item is searched for in the
sub-array to the right of the middle item. This process continues on the sub-
array as well until the size of the sub-array reduces to zero.
Now we compare the value stored at location 4, with the value being searched,
i.e. 31. We find that the value at location 4 is 27, which is not a match. As the
value is greater than 27 and we have a sorted array, so we also know that the
target value must be in the upper portion of the array.
low = mid + 1
mid = low + (high - low) / 2
Our new mid is 7 now. We compare the value stored at location 7 with our
target value 31.
The value stored at location 7 is not a match, rather it is less than what we
are looking for. So, the value must be in the lower part from this location.
We compare the value stored at location 5 with our target value. We find that
it is a match.
Advantage: Binary search halves the searchable items and thus reduces the
count of comparisons to be made to very less numbers.
6 Insert operation when we use either search Easily inserted at the end Require
of list processing to
insert at its
proper place
to maintain
sorted list.