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

Multi-threaded processors, The use of distributed shared memory in parallel...

The use of distributed shared memory in parallel computer architecture however the use of distributed shared memory has the problem of accessing the remote memory that results in l

Scientific applications-image processing, Scientific Applications/Image pro...

Scientific Applications/Image processing Most of parallel processing functions from science and other academic subjects, are mainly have based upon arithmetical simulations whe

Pre order given find post order ?, The preorder traversal sequence of a bin...

The preorder traversal sequence of a binary search tree is 30, 20, 10, 15, 25, 23, 39, 35, 42. Which one of the following is the postorder traversal sequence of the same tree?

Write your array of text into file, Part I: 1. The program starts by prin...

Part I: 1. The program starts by printing your initial with an end sign ">". For example, "cjx >"; 2. Then, you can type in the following "vi filename". For example, "vi myp.c

What is access latency and rotation speed, Q. What is Access latency and Ro...

Q. What is Access latency and Rotation Speed? Access latency: A disk access basically moves the arm to selected cylinder and waits for rotational latency that may take less t

What is decision support system and describe its components, Q. What is a D...

Q. What is a DSS and Describe its components? A decision support system (DSS) is a highly flexible and interactive IT system that is designed to support decision making when t

Decision support at a digital hospital, Heart disease is the number-one kil...

Heart disease is the number-one killer in the United States, and in a cardiac crisis, each minute matters. Indiana Heart Hospital (IHH) is a new cardiac hospital that saves life b

What is the role of a controller in an mvc application, The controller resp...

The controller responds to user interactions, with the application, by selecting the act method to implement and also selecting the view to render.

Explain transport layer of osi model, Explain Transport Layer of OSI Mode...

Explain Transport Layer of OSI Model. The transport layer utilizes the services provided through the network layer, as best path selection and logical addressing, to give end

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