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

Java Programming, How to parse n size depth node in java and create output ...

How to parse n size depth node in java and create output in same tree format?

Show the transmission control protocol, Q. Show the Transmission Control Pr...

Q. Show the Transmission Control Protocol? Transmission Control Protocol (TCP) TCP makes Internet reliable. TCP solves many problems which can occur in a packet switching

Disadvantages of address translation, Disadvantages of Address translation:...

Disadvantages of Address translation: Disadvantages are following: A program that is too large to be held in a part needs some special design, that called overlay

Define rotational latency and disk bandwidth, Define rotational latency and...

Define rotational latency and disk bandwidth. Rotational latency is the additional time waiting for the disk to rotate the desired sector to the disk head. The disk bandwidth i

Explain latex in matlab, Matlab already handles naturally easy LaTeX encodi...

Matlab already handles naturally easy LaTeX encodings that permit introducing Greek lettters or modifying the font size and appearance in plots.

Calculate the complexity of sorting algorithms, How do you calculate the co...

How do you calculate the complexity of sorting algorithms? Find the complexity of Insertion sort and Bubble Sort.                 The difficulty of sorting algorithms depends o

DISCRETE STRUCTURES, SET 2I OF ALL INTEGERS WITH ZERO IS AN ABELIAN GROUP

SET 2I OF ALL INTEGERS WITH ZERO IS AN ABELIAN GROUP

#title.sequential circuit, design modulo 12 up synchronous counter using t ...

design modulo 12 up synchronous counter using t flip flop

What is ai, Artificial intelligence ("AI") can mean a lot of things too man...

Artificial intelligence ("AI") can mean a lot of things too many people. Much confusion arises that the word 'intelligence' is ill-defined. The phrase is so broad that people have

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