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

Operating systems, Consider the state transition diagram of Figure 3.9b . S...

Consider the state transition diagram of Figure 3.9b . Suppose that it is time for the OS to dispatch a process and that there are processes in both the Ready state and the Ready/S

Quick sort exhibit its worst-case behaviour, In which input data does the a...

In which input data does the algorithm quick sort exhibit its worst-case Behaviour? The Quick Sort method exhibits its worst-case behavior when the input data is " Already Comp

Explain the different fields of an instructions, Explain the significance o...

Explain the significance of different fields of an instruction An instruction is a command given to a computer to perform a particular operation on some given data and the form

Balanced trees and their operations, what is ment by avl tree n insertion n...

what is ment by avl tree n insertion n deletion ,2-3 tress insertion n deletion

Explain program interpretation process, Explain program interpretation pr...

Explain program interpretation process. In a program interpretation process , the interpreter reads the source program and stores this in its memory. This bridges an executi

Introduction to the sorted arraylist, Consider  a  collection  class  that ...

Consider  a  collection  class  that  is  similar  to  the ArrayList  class,  except  that  elements  are sorted in a certain order. We will call this class SortedArrayList. This c

Describe the architecture of electronic data exchange, Describe the Electro...

Describe the Electronic Data Exchange (EDI) architecture in brief. Electronic Data Interchange (EDI) may be generally easy to understand as the replacement of paper-based purch

Bit serial associative processor (bsap), Bit Serial Associative Processor (...

Bit Serial Associative Processor (BSAP) : When the associative processor accepts bit serial memory organization then it is known as bit serial associative processor. While only one

Logical representations, Logical Representations: If all human beings ...

Logical Representations: If all human beings spoke the same language, there would be a much more less misunderstanding in the world. The problem regarding with software engine

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