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

Mclr, 10 k Ohm pulls up on MCLR so that the ICD can force 0, +5, +13 volts ...

10 k Ohm pulls up on MCLR so that the ICD can force 0, +5, +13 volts on this pin. RB6 and RB7 used for PGC and PGD respectively between target and ICD2 module. Some of the requi

Main drawbacks of cd-roms, Q. Main drawbacks of CD-ROMs? The main drawb...

Q. Main drawbacks of CD-ROMs? The main drawbacks of CD-ROMs are: It is read only thus can't be updated Access time is longer than that of magnetic disks. Very

What is optical character recognition, What is Optical character recognitio...

What is Optical character recognition (OCR)  Information on paper is automatically read by a scanner and is then processed/analysed by OCR software and stored in an electronic

Queueing process, explain in detail about queueing process

explain in detail about queueing process

Loop level-parallelism based on granularity size, Loop Level This is...

Loop Level This is one more level of parallelism where iterative loop instructions can be parallelized. Fine Granularity  size is used at this level also. Simple loops in a

What is the accessibility testing, Accessibility testing for web sites is a...

Accessibility testing for web sites is a service that can give much more than the standard point-by-point testing methods of most automated services.

Telecommunications, with poisson arrival of two calls per minute what is th...

with poisson arrival of two calls per minute what is the probability that more than three calls will arrive in two minutes? that is the time during which at least 4 calls will arr

Find out the 2's complement of 1101110, The 2's complement of the number 11...

The 2's complement of the number 1101110 is ? Ans. 1's complement of 1101110 is = 0010001 ans hence 2's complement of 1101110 is = 0010001 + 1 = 0010010.

Simple instruction formats, Simple instruction formats: RISC uses simpl...

Simple instruction formats: RISC uses simple instruction formats. Usually only one or a few instruction formats are used. In these machines instruction length is fixed and alig

History, #what is the history of computer science

#what is the history of computer science

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