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

Program testing and debugging, Program testing and debugging: Program ...

Program testing and debugging: Program testing is the method of checking program, to verify that it satisfies its needs and to detect errors. These errors can be of any type-

Explain properties of the webservice attribute, Question: (a) (i) Expl...

Question: (a) (i) Explain properties of the WebService attribute. (ii) Discuss three properties of the WebMethod attribute. (b) What are WSDL documents used for? (c)

Evaluation stack architecture, Q. Evaluation Stack Architecture? A stac...

Q. Evaluation Stack Architecture? A stack is a data structure which implements Last-In-First-Out (LIFO) access policy. You can add an entry to the with a PUSH(value) as well as

Draw layout cells in a table, Now add layout cells into which you will add ...

Now add layout cells into which you will add text about travel locations. 1.  In Objects panel, click the Draw Layout Cell icon and move the pointer to layout table you just dre

What are the 2 ieee standards for floating point numbers, What are the 2 IE...

What are the 2 IEEE standards for floating point numbers? 1.single 2.double

Role of bitmap indexes to solve aggregation problems, Describe about the ro...

Describe about the role of bitmap indexes to solve aggregation problems? Ans) Bitmaps are very useful in begin schema to join large databases to small databases. Answer queries

What do you understand by client-server architecture, Question: (a) (i...

Question: (a) (i) Explain what do you understand by Client/server architecture? (ii) List and briefly describe 3 types of Client/server architecture. (b) The most impo

Define dma controller, Define DMA controller. The I/O device interface ...

Define DMA controller. The I/O device interface control circuit that is used for direct memory access is called as DMA controller.

Why have companies gone ecommerce, One of these objectives is related to co...

One of these objectives is related to costs. By going e-commerce, consumers will be able to submit their purchase requests to the sellers without paying a visit to their place. Thi

Codevita test, provide answers for Luminous Jewels - The Polishing Game?

provide answers for Luminous Jewels - The Polishing Game?

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