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

Name some multimedia applications, Illustrate what are the Multimedia appli...

Illustrate what are the Multimedia applications Multimedia comprise the use of a computer to present: - Text - Video - Graphics - Sound - Animation In an inte

What is artificial intelligence robotics, Artificial Intelligence Robotics ...

Artificial Intelligence Robotics covers all the material required to understand the principles behind the AI approach to robotics and to program an artificially intelligent robot f

Input-output techniques, After going through details of device interfaces n...

After going through details of device interfaces next point to be discussed is how the interface can be used to support I/O from devices. Binary information received from an extern

Explain concept of temporal parallelism, Concept of Temporal Parallelism  ...

Concept of Temporal Parallelism  In order to make clear what is meant by parallelism inherent in solution of a problem, let's discuss an example of submission of electricity b

Basic architecture of computer system, Q. Basic Architecture of computer sy...

Q. Basic Architecture of computer system? Replacing the ALU and CU (i.e., CPU) of Figure by a microprocessor, and storing instructions and data in the same memory, one arrives

By which the excess-3 code of decimal 7 is represented , The excess-3 code ...

The excess-3 code of decimal 7 is represented by ? Ans. An excess 3 code of decimal 7 is equal to the binary code +3.

Define interrupts, Interrupts are signals which cause the CPU to suspend th...

Interrupts are signals which cause the CPU to suspend the currently executing program and transfer to a special program known as an interrupt handler. Interrupt handler determines

How linq is beneficial than stored procedures, There are couple of benefit ...

There are couple of benefit of LINQ over stored procedures.   1. Debugging - It is really very difficult to debug the Stored procedure but as LINQ is part of .NET, you can us

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