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

Calculate register transfer time, Q. Calculate Register Transfer Time? ...

Q. Calculate Register Transfer Time? A clock isn't included explicitly in any statements discussed above. But it is presumed that all transfers take place during clock edge tra

Role of internet, Role of Internet, Intranet and extranet in e-business ...

Role of Internet, Intranet and extranet in e-business The following information activities are carried out in many business: 1.  Selling of raw materials 2.  Advertising o

Symbolic reasoning, An expert system also represents knowledge symbolica...

An expert system also represents knowledge symbolically as sets of symbols that stand for problem concepts. In AI jargon symbol is a string of characters that stands for

In java system.out is an object of which type, In Java System.out is an obj...

In Java System.out is an object of type? In Java System.out is an object of form Print Stream.

Explain ones complement operator, One's Complement Operator: ~ The one'...

One's Complement Operator: ~ The one's complement operator, sometimes called the "bitwise complement" or "bitwise NOT" operator, produces the bitwise one's complement of its op

Concurrently read exclusively write, Q. Concurrently read exclusively write...

Q. Concurrently read exclusively write? It's one of the models based on PRAM. In this model, processors access the memory location simultaneously for reading whereas exclusivel

Calculate quantities from information in bayesian network, 1. A Bayesian ne...

1. A Bayesian network is shown for the variables paper Thickness, paper Alignment and Print Quality. The conditional probabilities are provided in the tables beside the nodes. Here

What is block scope, What is Block scope Block scope: The variables w...

What is Block scope Block scope: The variables with block scope appear in a block or within the list of formal parameter declarations in a function definition. It is visible

Procedure which divides a 32-bit number by a 16-bit number, Write a procedu...

Write a procedure which divides a 32-bit number by a 16-bit number. The procedure must be general which is it's defined in one module and can be called from another assembly module

Why cyclomatic complexity is important, Why cyclomatic complexity is import...

Why cyclomatic complexity is important? Cyclomatic complexity is computed using a graph that verifies the control flow of the program. The nodes of the graph correspond to the

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