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 a breeder reactor, Q. What is a breeder reactor? 92 U 238 and...

Q. What is a breeder reactor? 92 U 238 and 90 Th 232 aren't fissile materials but are abundant in nature. In the reactor these are able to be converted into a fissile mater

Explain instruction stream and data stream, Instruction Stream and Data Str...

Instruction Stream and Data Stream The term 'stream' indicates to a series or flow of either instructions or data operated on by computer. In the entire cycle of instruction ex

What is computer to computer communication, Computer to computer communicat...

Computer to computer communication is: (A)  Simplex                                   (B)  Duplex (C)  Half Duplex                             (D)  Both Duplex and Half D

Explain virtual memory, In a memory hierarchy system, data and programs are...

In a memory hierarchy system, data and programs are first stored in secondary or auxiliary memory. Program and its related data are brought in main memory for execution. What if th

Define point-to-point communication, Q. Define Point-to-point Communication...

Q. Define Point-to-point Communication? The simplest form of message is a point to point communication. A message is sent from the transmitting processor to a receiving process

Can we use write statements in screen fields, Can we use WRITE statements i...

Can we use WRITE statements in screen fields? If not how is data transferred from field data to screen fields? We cannot write field data to the screen using the WRITE stateme

Kruskal''s, Image Segmentation with Minimum Spanning Forests (50 points). D...

Image Segmentation with Minimum Spanning Forests (50 points). Develop a Python 3 implementation of the image segmentation algorithm that we explored on the first day of class. Your

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

Electrical technology, voltage,current and power relation in a delta connec...

voltage,current and power relation in a delta connection

Determine by which final selector is connected, The final selector is conne...

The final selector is connected to the (A) calling subscriber.                     (B) switching network. (C) called subscriber.                      (D) li

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