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

Which is the slowest sorting procedure, The slowest sorting procedure is   ...

The slowest sorting procedure is    Bubble Sort is the slowest sorting process.

Which one state is not a fundamental process state, Which one state is not ...

Which one state is not a fundamental process state? Ans. Blocked state is not a fundamental process state.

Define the karnaugh maps (k maps), Define The Karnaugh Maps (K Maps) Th...

Define The Karnaugh Maps (K Maps) The Karnaugh map (K map) provides the systematic method for simplifying a Boolean expression or a truth table function when used properly the

Which is not a layer of input-output management module, Which is not a laye...

Which is not a layer of IO management module? Ans. MCS that is Management Control System, is not a layer of IO management module.

#title.sequential circuit, design modulo 12 up synchronous counter using t ...

design modulo 12 up synchronous counter using t flip flop

Utilization summary, Utilization Summary The Utilization Summary shows ...

Utilization Summary The Utilization Summary shows the status of each processor i.e. how much time (in the form of percentage) have been spent by every processor in busy mode, o

Write a subroutine in c which toggles the cursor, Q . Write a subroutine in...

Q . Write a subroutine in C which toggles the cursor? Write a subroutine in C which toggles the cursor. It takes one argument which toggles the value between on (1) and off (0)

What are subroutines, What are subroutines? Subroutines are program mo...

What are subroutines? Subroutines are program modules, which can be known  from other ABAP/4 programs or within the similar program.

Interpreter, difference between pure and impute inter preter

difference between pure and impute inter preter

What is test factory, Rational Test Factory is a component-based testing to...

Rational Test Factory is a component-based testing tool that automatically produces TestFactory scripts according to the application's navigational structure. TestFactory is integr

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