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

What is booting, What is booting? When the power is turned on, the OS h...

What is booting? When the power is turned on, the OS has to be loaded into the main memory which is taken place as part of a process known as booting. To initiate booting a tin

Describe the bespoke versus off-the-shelf software, Bespoke versus off-the-...

Bespoke versus off-the-shelf software Generally software packages are bought off-the-shelf. Though, certain applications (generally for industrial companies, commercial busines

Write a small program using floating-point operations, Question: a) Wri...

Question: a) Write a small program using floating-point operations in Reverse Polish Notation to evaluate the following: Volume of Sphere = (4/3)πr 3 Consider that the u

What is dots per inch, Q. What is Dots per Inch? DPI (Dots per Inch) is...

Q. What is Dots per Inch? DPI (Dots per Inch) is a measure for actual sharpness of onscreen image. This relies on both the resolution and size of the image. Practical experienc

Write short note on digital audio segments, Problem: a) Authoring tools...

Problem: a) Authoring tools consist of two basic features. First, an authoring facility for creating and editing, and second, a presentation vehicle for delivery. The authorin

What are the various design constraints, What are the various Design constr...

What are the various Design constraints used while performing Synthesis for a design? 1. Make the clocks (frequency, duty-cycle). 2. Explain the transition-time requirements

Define hex directive, Q. Define HEX directive? HEX: HEX directive enabl...

Q. Define HEX directive? HEX: HEX directive enables the coding of hexadecimal values in body of the program. That statement directs assembler to treat tokens in source file wh

State about CSMA/CA, State about CSMA/CA It belongs to a class of proto...

State about CSMA/CA It belongs to a class of protocols known as multiple access methods. CSMA/CA  stands  for:  Carrier  Sense  Multiple  Access  with  Collision Avoidance.  In

Tag do you use to add a hyperlink column to the DataGrid, What tag do you u...

What tag do you use to add a hyperlink column to the DataGrid?   Anchor tag is used to add a hyperlink column to the data grid

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