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

Determine the octal equivalent of decimal number, The octal equivalent of (...

The octal equivalent of (247) 10 is ? Ans. (247) 10 = (367) 8

Explain both absolute addressing and implied addressing, Absolute addressin...

Absolute addressing and  Implied addressing A fixed address is specified and also called as direct addressing. The location of data is implied by instruction itself, so no

Difference between static and dynamic RAM, Difference between static and dy...

Difference between static and dynamic RAM. Draw the circuits of one cell of each and explain its working. Ans: Differentiation among Static RAM and Dynamic RAM: Static

Dynamic programing, a ship is loaded with a stock of 3 items each unit of i...

a ship is loaded with a stock of 3 items each unit of item n has a wt wn and vn the max cargo wt the ship can take is the details of 3items are item(n):1 2 3 wt(wn):2 3 1 value(vn)

Directory of the distribution, I tried to run two of the applets in the exa...

I tried to run two of the applets in the examples directory of the distribution?    Ans) I tried to run two of the applets in the example directory of the distribution. I instal

Manipulating numbers, Computers manipulate numbers - but decimalnumbers wit...

Computers manipulate numbers - but decimalnumbers with digits 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 cannot be represented using two states of a digitalcircuit.Instead decimal numbers are co

Human computer interaction, Preamble The owner of the local shopping mal...

Preamble The owner of the local shopping mall, MaxiMart, has contracted you to assist in the design of an interactive directory. The interactive directory is to be permanently l

Steps in building the structure chart, Steps in Building the Structure Char...

Steps in Building the Structure Chart 1. Recognize top level modules and decompose them into lower levels 2. Add control connections 3. Add couples 4. Review and revis

Fuzzy logic - artificial intelligence, Fuzzy Logic: In the logics we a...

Fuzzy Logic: In the logics we are here described above, what we have been concerned with truth: whether propositions and sentences are true. Moreover, with some natural langua

What are the objectives of usb, What are the objectives of USB? a) Simp...

What are the objectives of USB? a) Simple b) Low cost c) Easy to use d) Supports wide range of data transfer characteristics e) Plug and play mode of operation

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