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

C, "Super ASCII", if it contains the character frequency equal to their asc...

"Super ASCII", if it contains the character frequency equal to their ascii values. String will contain only lower case alphabets (''a''-''z'') and the ascii values will starts from

What is the session, What is the session.  Session is a collection of v...

What is the session.  Session is a collection of various groups of method. Every session is assigned to a single control terminal. This terminal is either a pseudo-device. or a

Explain inheritance, Can you explain what inheritance is and an example of ...

Can you explain what inheritance is and an example of when you might use it? The process of deriving a new class from an existing class is known as Inheritance. The old class i

Low level language program, The commands (instructions) are native instruct...

The commands (instructions) are native instructions to the 68HC11 and therefore it is termed a low level language program. Examining the program the instructions (mnemonics) they a

#MyLife, where should I work?

where should I work?

Where does the cpu enhanced mode originate , Intel's 8086 was the first 32-...

Intel's 8086 was the first 32-bit processor, and as the company had to backward-support the 8086. All the modern Intel-based processors will run in the Enhanced mode, capable of sw

Database management system, Consider the following instance of the Students...

Consider the following instance of the Students relation, sorted by gpa. sid name login age gpa 53831 Madayan madayan@music 11 1.8 53832 Guldu guldu@music 12 2.0 53688 Smith smith

Grid security, i just want the experiment to be taken , on Grid Security......

i just want the experiment to be taken , on Grid Security........

Illustrate domain names and address resolution, Q. Illustrate Domain Names ...

Q. Illustrate Domain Names and Address Resolution? But what if you don't know IP address of the computer you want to connect to? What happens if you need to access a web server

What is a scope resolution operator, A scope resolution operator (::), can ...

A scope resolution operator (::), can be used to describe the member functions of a class outside the class.

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