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

Describe the functions of an operating system, Question: (a) Software ...

Question: (a) Software may be categorized into System software and Application software. Differentiate between these two categories, using examples to support your answer.

Differentiate between motion and shape tween, Question: 1. In Flash, w...

Question: 1. In Flash, what is the purpose of a motion guide layer? 2. Differentiate between Motion and Shape tween. 3. Give the steps to create a layer mask in flash.

Distinguish between http and true streaming, Question: 1. Distinguish ...

Question: 1. Distinguish between HTTP and True streaming, stating the advantages and disadvantages of both type of media streaming. 2. Name two online services which provi

Last ant on rod, i want program code for the above question in c language

i want program code for the above question in c language

What is a size category, What is a Size Category? The Size category ve...

What is a Size Category? The Size category verifies the probable space needs of the table in the database.

Program accept decimal number and convert it into given base, Q Develop a p...

Q Develop a program that accepts decimal number and converts it into given base. Fractional numbers are allowed and negative numbers are not allowed. Also check that entered number

What is the difference between strong ai and weak ai, Strong AI makes the b...

Strong AI makes the bold claim that computers can be made to think on a level (at least) equivalent to humans. Weak AI only states that some "thinking-like" features can be added t

Advantage or disadvantage of using INADDR_ANY, What is the advantage or dis...

What is the advantage or disadvantage of using INADDR_ANY instead of the IP address of the computer running on the server? The format of TCP/IP, structure sockaddr_in defines u

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