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

List factors that determine the storage device performance, List the factor...

List the factors that determine the storage device performance. i.Access time ii.Cycle time iii.Transfer Rate.

How will these instructions perform?, Q. How will these instructions perfor...

Q. How will these instructions perform? Let's assume that above machine instructions are stored in three consecutive memory locations 1, 2 and 3 and PC contains a value (1) tha

Programming with loops and comparisons, Q. Programming with loops and compa...

Q. Programming with loops and comparisons? This segment deals with more practical illustrations employing comparison, loops and shift instructions. Simple Program Loops

Define opcode and operands, Q. Define Opcode and Operands? The most com...

Q. Define Opcode and Operands? The most common fields which are found in instruction formats are: Opcode: (What operation to perform?)  An operation code field cal

What is the meaning of rigging, Rigging is use for if we need to give anima...

Rigging is use for if we need to give animation for any object or character then we apply to character or object internal bone setting(like our bones).that is known as rigging. Whe

Determine grade of service is given worse service or not, The larger the Gr...

The larger the Grade of Service, the worse is the service given, it is true or false. Ans: It is true that larger the Grade of Service, the worse service is provided.

Efficiency of vector processing over scalar processing, Efficiency of Vecto...

Efficiency of Vector Processing over Scalar Processing: We know that, a sequential computer processes scalar operands one at a time. Thus, if we have to process a vector of len

Determine flip flop the msi chip is dual edge triggered, The MSI chip 7474 ...

The MSI chip 7474 is ? Ans. MSI chip 7474 is TTL, dual edge triggered D Flip-Flop.

What is hysteresis, What is hysteresis? Hysteresis is well known in fer...

What is hysteresis? Hysteresis is well known in ferromagnetic materials. When an external magnetic field is applied to a Ferro magnet, the atomic dipoles align themselves with

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