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

Define swapping, Define swapping.  A process needs to be in memory to b...

Define swapping.  A process needs to be in memory to be implemented. Though a process can be swapped temporarily out of memory to a backing store and then brought back into mem

Mathematical simulation and modelling applications, Mathematical Simulation...

Mathematical Simulation and Modelling Applications The tasks include mathematical simulation and modelling need lots of parallel processing. Three fundamental formalisms in mat

What are the different layers in r/3 system, What are the different layers ...

What are the different layers in R/3 system? There are three layer:- Presentation Layer. Application Layer. Database Layer.

Determine the term queries-DBMS, Determine the term Queries-DBMS Querie...

Determine the term Queries-DBMS Queries most commonly allow information to be retrieved from tables. As the information is often spread across numerous tables, queries allow it

What are different adder circuits you studied, Half Adder (for addition of ...

Half Adder (for addition of two bits) Full Adder (for addition of three bits) Carry look ahead adder Carry save adder Carry propagate adder

What are the type of internet connection, What are the type of Internet con...

What are the type of Internet connection When determining requirements for a VPN, carefully estimate the number of systems to be put behind the VPN, the number of concurrent u

What are models and meta models, Model: It is a entire explanation of s...

Model: It is a entire explanation of something (i.e. system). Meta model: It shows the model elements, syntax and semantics of the notation that permits their manipulatio

Options with dir in dos, Q. Options with DIR in DOS? You can use a numb...

Q. Options with DIR in DOS? You can use a number of options with DIR. To get the list of files from any other drive, denote the drive name followed by ':' with DIR. For exam

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