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

Data mining, what is data mining and what is its uses in a industry?

what is data mining and what is its uses in a industry?

Difference between a substructure and an append structure, What is the diff...

What is the difference between a Substructure and an Append Structure? In case of a substructure, the reference originates in the table itself, in the form of a statement

Cse 320, Explain the functionality of the quadrant approach in the Spiral M...

Explain the functionality of the quadrant approach in the Spiral Model ?

What is strong-typing versus weak-typing, What is strong-typing versus weak...

What is strong-typing versus weak-typing? Which is preferred? Why? Strong type is checking the types of variables as early as possible, usually at compile time. Whereas weak ty

Use of intrinsic functions in fortran, Q. Use of Intrinsic Functions in FOR...

Q. Use of Intrinsic Functions in FORTRAN? HPF initiates some new intrinsic functions also to those defined in F90. The two mainly often used in parallel programming are system

Determine the two input of NOR gate if output will be low, The NOR gate out...

The NOR gate output will be low if the two inputs are ? Ans. Output is low if any of the input is high means input may be 01,10 or 11.

Cache simulater, Requirements You are required to program (in a high l...

Requirements You are required to program (in a high level language such as C, C++, Java) and implement a cache simulator which will have the following inputs and outputs:-

COMPUTER SYSTEM, Classify computer systems according to capacity. How they ...

Classify computer systems according to capacity. How they are different from computers according to the classification of technology. Provide comparative study also.

What is data movement, Data movement instructions shift data from one locat...

Data movement instructions shift data from one location to another. The source and destination locations are verified by the addressing modes, and can be registers or memory. Many

Explain the working principle of hard disk, Question : a) Hard disk is ...

Question : a) Hard disk is an important component of a computer. What type of memory is it? b) With the help of a diagram describe its features. c) Explain its working pr

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