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 is npblox framework, Designed, developed, tested and documented the de...

Designed, developed, tested and documented the demo created for NPBlox framework. NPBlox framework is a framework which enabled developers to create CLI/WEB/SNMP interfaces for

Which of the memory is volatile memory, Which of the memory is volatile mem...

Which of the memory is volatile memory ? Ans. A volatile memory is RAM. Term Volatile memory implies the contents of the RAM get erased as soon as the power goes off.

Keys, why impotant keys

why impotant keys

Fundamental difference between smart card and e-cash, What is the fundament...

What is the fundamental difference between the transactions made using Smart Card and E-cash? Smart Card and E-Cash: E-cash storable smart cards can dispense and store ca

What a hardware uses to calculates cyclic redundancy check, Hardware that c...

Hardware that calculates CRC (Cyclic Redundancy Check) uses: Hardware which computes CRC utilizes shift register and Xor unit.

What is said to be side effect, What is said to be side effect? When a ...

What is said to be side effect? When a location other than one explicitly named in an instruction as a destination operand is affected, the instruction is said to have a side e

What is persistence, What is Persistence When you make an object, it e...

What is Persistence When you make an object, it exists for so long as you need it, but under no circumstances object exist when program terminates. While this makes sense at s

Implement a priority queue, 1. Insert the following characters with their r...

1. Insert the following characters with their respective priorities (shown as ordered pairs) into an empty treap: (K, 17), (F, 22), (P, 29), (M, 10), (N, 15), (L, 26), (G, 13),

Explain structure of control unit, Q. Explain Structure of Control Unit? ...

Q. Explain Structure of Control Unit? A control unit has a set of input values on the foundation of which it produces an output control signal which in turn performs micro-ope

Explain the random scan and raster scan displays, Define Random scan/Raste...

Define Random scan/Raster scan displays?  Random scan is a method in which the display is made by the electronic beam which is directed only to the points or part of the 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