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

First order logic, "George has a dog called Ernie, which is a trained Labra...

"George has a dog called Ernie, which is a trained Labrador. Trained Labradors and poodles are obedient, and all obedient dogs are good dogs. All good dogs that have a master will

Define the vbscript basics, VBScript is an easy and powerful to learn tool ...

VBScript is an easy and powerful to learn tool which can be used to add interaction to your Web pages. Web browser receives scripts along with rest of the Web document. Browser par

Describe about directory in doc, Q. Describe about directory in DOC? We...

Q. Describe about directory in DOC? We all know that, the volume of the hard disk is generally quite large (10 MB to a few GB). You can keep hundreds or even thousands of files

Convention used to represent micro-operations, Q. Convention used to repres...

Q. Convention used to represent micro-operations? The convention used to represent micro-operations is: 1.  Computer register names are designated by capital letters (someti

What are the various hazards encountered in pipelining, What is pipelining?...

What is pipelining? What are the various hazards encountered in pipelining?  Explain in detail. The major characteristics of a pipeline are: a) Pipelining cannot be exe

Explain program interpretation process, Explain program interpretation pr...

Explain program interpretation process. In a program interpretation process , the interpreter reads the source program and stores this in its memory. This bridges an executi

Why we use modem, Q. Why we use Modem? A Modem is one device which most...

Q. Why we use Modem? A Modem is one device which most computer users who have surfed Internet are aware of.  A modem is neededsincehowever most of telecommunications have becom

Benefit of digital versatile disk read only memory, Q. Benefit of digital v...

Q. Benefit of digital versatile disk read only memory? The main benefit of having CAV is that individual blocks of data can be accessed at semi-random mode. So head can be move

Bank prevent an infinite loop, a) Write a program that figures out how long...

a) Write a program that figures out how long it will take to pay off a credit card by making payments of $10 every month. Take care to avoid infinite loops. (How would a bank preve

What is external procedures, Q. What is External Procedures? These proc...

Q. What is External Procedures? These procedures are written as well as assembled in separate assembly modules and afterwards linked together with the main program to form a bi

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