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

Example to show directory in doc, Q. Example to show directory in doc? ...

Q. Example to show directory in doc? Like a file name, the directory name may also have up to eight alpha-numeric characters. The directory name can also have an extension

Scsi bus - computer architecture, SCSI Bus:   Defined by ANSI - X3....

SCSI Bus:   Defined by ANSI - X3.131   50, 68 or 80 pins   Max. transfer rate - 160 MB/s, 320 MB/s. SCSI Bus Signals   Small Computer System Interface

What are the various functional verification methodologies, What are the va...

What are the various functional verification methodologies Ans: TLM (Transaction Level Modelling) Linting RTL Simulation (Environment  involving  :  stimulus  generators,

Explain time complexity in parallel algorithms, Q. Explain Time Complexity ...

Q. Explain Time Complexity in Parallel algorithms? As it takes place nearly everyone who implement algorithms wish to know how much of an individual resource (for example time

Interconnection networks, As in PRAM there was not any direct communication...

As in PRAM there was not any direct communication medium between processors so a different model called as interconnection networks have been considered. In the interconnection net

What is oo development, What is OO Development? OO development is a way...

What is OO Development? OO development is a way of thinking about software based on abstractions that exist in the actual world. Development refers to software lifecycle, desig

What is microcomputers, Q. What is Microcomputers? Microcomputers have ...

Q. What is Microcomputers? Microcomputers have become a common part of everyday life. The cost ranging from a few hundred to about ten thousand dollars, today's 16- and 32-bi

Explain top-down parsing, Explain Top down parsing. Top down parsing...

Explain Top down parsing. Top down parsing: Specified an input string, top down parsing tries to derive a string identical to this by successive application of grammar rule

Implicative normal form, Implicative normal form: Thus the sentence is...

Implicative normal form: Thus the sentence is now in CNF. In Fact for simplification can take place by removing duplicate literals and dropping any clause that contains both A

Basic logic gates, Basic logic gates Introduce the basic logic gates i...

Basic logic gates Introduce the basic logic gates in terms of a) their function, b) their circuit symbol, c) their truth table and d) their equivalent in Boolean a

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