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

Database, what are the Database designs to avoid?

what are the Database designs to avoid?

Determine about the security methods, Determine about the Security methods ...

Determine about the Security methods Security methods also protect information from accidental or intentional modification, manipulation or destruction. Most security experts o

Implementation of 4-to-1 multiplexer, Implement the Y(A, B, C) = ∑(2,3,5,6)...

Implement the Y(A, B, C) = ∑(2,3,5,6) function using 4-to-1 multiplexer.   Ans. Y(A,B,C)=∑(2,3,5,6) Here we take B,C as the select bits also A as input. To select the input we can

What is interpolated resolution, Q. What is Interpolated Resolution? Ev...

Q. What is Interpolated Resolution? Every Scanner is accompanied by a software. This software can raise the apparent resolution of scan by a scheme known as Interpolation.  By

Explain virtual memory, In a memory hierarchy system, data and programs are...

In a memory hierarchy system, data and programs are first stored in secondary or auxiliary memory. Program and its related data are brought in main memory for execution. What if th

Convert ascii code to its bcd equivalent, Convert ASCII code to its BCD equ...

Convert ASCII code to its BCD equivalent. This can be achieved by simply replacing bits in upper four bits of byte by four zeros. For illustration the ASCII '1' is 32h = 0010B. By

How and what data is gathered- simulation, How and what data is gathered- S...

How and what data is gathered- Simulation To make this as realistic as possible, data is required to be gathered over a long period of time. This can be done by sensors near/i

What the first part of the address identifies in e-mailbox, The first part ...

The first part of the address in electronic mailbox identifies? The first part of address in E-Mail identifies the user's mail box.

What is the future in mq if i have 2+exp, It speeds execution of distribute...

It speeds execution of distributed applications. It runs on dissimilar platforms. It time independent. No loss for msg delivery i.e. guarantee delivery.

Operating characteristics for master-slave s-r flip-flop, Define the Operat...

Define the Operating Characteristics for master-slave S-R flip-flop? 1. Propagation Delay Time - is the interval of time required subsequent to an input signal has been applied

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