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

What do you mean by execution unit, Q. What do you mean by Execution Unit? ...

Q. What do you mean by Execution Unit? Execution unit performs all ALU operations. Execution unit of 8086 is of 16 bits. It also contains the control unit that instructs bus in

How to clear computer motherboard cmos password, As CMOS is a special chip ...

As CMOS is a special chip with its own battery, the best way to clear out a CMOS chip is to cut off it from its power supply. To clear the CMOS password you just take away the

How a procedure define in assembly, Q. How a Procedure define in Assembly ?...

Q. How a Procedure define in Assembly ? Procedure is defined within source code by placing a directive of form: PROC A procedure is terminated using: ENDP The

Selection - artificial intelligence, Selection - artificial intelligence: ...

Selection - artificial intelligence: However the first step is to choose the individuals that will have a shot at becoming the parents of the next generation. Hence this is kn

Illustrate 16-bit isa, Illustrate 16-bit ISA?  Compare it with 8-bit ISA bu...

Illustrate 16-bit ISA?  Compare it with 8-bit ISA bus.  The only difference between 8 and 16-bit ISA bus is that an extra connector is attached behind the 8-bit connector. 16-b

What is the use of ''using'' declaration in c++, A using declaration in C++...

A using declaration in C++ makes it likely to use a name from a namespace without the scope operator.

Software estimation, Software Estimation The statement of scope helps t...

Software Estimation The statement of scope helps the planner to established estimates using one or more method which fail into two wide categories: empirical modeling and decom

Design combinational-sequential electronic logic gate, Combinational/Sequen...

Combinational/Sequential Logic design with Integrated Circuits (Dual in line package) Car wash concept with the following steps in a Combinational Logic Diagram: 1.    Start

Calculate the shortest distance using minimum spanning tree, Does the minim...

Does the minimum spanning tree of a graph give the shortest distance between any 2 specified nodes? No. The Minimal spanning tree makes sure that the total weight of the tree i

The field sy-dynr, The field SY-DYNR refers to Number of the current sc...

The field SY-DYNR refers to Number of the current screen.

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