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

What is radium utilized for, Q. What is radium utilized for? Answer:- ...

Q. What is radium utilized for? Answer:- Radium was previously used in self-luminous paints for nuclear panels, watches, clocks, aircraft switches and instrument dials. In

At least two optional data fields, As an XML expert you are needed to model...

As an XML expert you are needed to model a system for an online furniture shop. After an interview with the shop manager you have the certain information: The detail of th

Explain semaphore, What is a semaphore? Semaphore: It is a synchroniz...

What is a semaphore? Semaphore: It is a synchronization tool which gives a general-purpose solution to controlling access to critical sections.

Data packet from one network to another, A device that forwards data packet...

A device that forwards data packet from one network to another is known as a  Switch device.

How address resolution is performed with table lookup, How address resoluti...

How address resolution is performed with table lookup? Explain with the help of a suitable example. The approach of table lookup to address resolution needs a data structure wh

Explain non-pre-emptive algorithms, Explain non-pre-emptive algorithms?   ...

Explain non-pre-emptive algorithms?   Non preemptive algorithms: In this algorithm a job is provided to CPU for execution as long as the job is non-completed the CPU cannot

What is ordered directive, Q. What is Ordered directive? This directive...

Q. What is Ordered directive? This directive is used in combination with for and parallel for directives to cause an iteration to be executed in order that it would have been h

Why have companies gone ecommerce, One of these objectives is related to co...

One of these objectives is related to costs. By going e-commerce, consumers will be able to submit their purchase requests to the sellers without paying a visit to their place. Thi

Define alphabet and string, Define Alphabet and String? A finite set of...

Define Alphabet and String? A finite set of symbols is termed as alphabet. An alphabet is frequently signified by sigma, yet can be specified any name. B = {0, 1} here B is

What is reification, What is reification? It is the promotion of someth...

What is reification? It is the promotion of something that is not an object into an object. Helpful method for Meta applications. It shifts the level of abstraction. Promote

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