Binary search, Computer Engineering

Assignment Help:

Binary Search

Now that the basic framework is working, it is time to begin implementing a few alternative search functions. Each of these search algorithms have strengths and weaknesses, depending on the distribution of the input and the search keys used. The classic solution to this problem is binary search. Binary search is a divide-and-conquer algorithm. See Levitin [2007] pp 162 for a detailed description of this algorithm.

ALGORITHM BinarySearch (A[0 . . . n - 1], k)
// Non-recursive binary search in an ordered list.
// INPUT : An array A[0 . . . n - 1] of ordered elements, and a search key k.
// OUTPUT : an index to the position of k in A if k is found or -1 otherwise.
1: l ← 0; r ← n - 1
2: while l ≤ r do
3: m ← ⌊(l + r)/2⌋
4: if A[m] = k then
5: return m
6: else if k < A[m] then
7: r ← m- 1
8: else

9: l ← m+ 1

10: return -1

Algorithm BinarySearch shows the pseudocode for this solution. Implement the algorithm.


Related Discussions:- Binary search

Which method uses the greatest number of layers in OSI model, Which method ...

Which method uses the greatest number of layers in the OSI model? Gateway utilizes the greatest number of layers into the OSI model.

Explain abstract class, What is an interface and what is an abstract class?...

What is an interface and what is an abstract class? Please, expand by examples of using both. Explain why?   Abstract classes are closely related to interfaces. They are classe

What are qualified associations, What are qualified associations? A qua...

What are qualified associations? A qualified association is an association in which an attribute known as the qualifier disambiguates the object many associated end.

Find the magnetic declination, Question Use the National Geophysical Da...

Question Use the National Geophysical Data Center software tool to find the magnetic declination. The link to the web site is in Useful Links on the course Blackboard home page

Constructor, what is meant by private copy constructor

what is meant by private copy constructor

The height of the left sub tree and height of the right tree, The differenc...

The difference among the height of the left sub tree and height of the right tree, for each node, is almost one.  AVL - tree

What do you mean by synchronization principles, In multiprocessing several ...

In multiprocessing several processors require to communicate with one another. So synchronisation is needed between them. The correctness and performance of parallel execution reli

Number system, Number systems   Consider a decimal number:         ...

Number systems   Consider a decimal number:               7654.32   Short hand for:            7 * 103 + 6*102 + 5* 101 + 4*100 + 3*10 -1  + 2*10 -2   Likewise

Subtraction using 2's complement method of binary number, Subtraction of 00...

Subtraction of 0011.1001 - 0001.1110 using 2's complement method Ans. Firstly 1's complement of 0001.1110 is 1110.0001 and 2's complement is 1110.0010. If a last carry

Analog to digital convertor, In which A/D converter has the speed of conver...

In which A/D converter has the speed of conversion is maximum ? Ans. In Parallel-comparator A/D converter, the speed of conversion is maximum. Speed of conversion is maximum a

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd