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

Explain the term thread scheduling, Problem: a) Most RMI and RPC system...

Problem: a) Most RMI and RPC systems expect to be supported by the "Request-Reply Protocol". Describe what "Request-Reply Protocol" is. b) Describe the invocation semantics

How ORG statement processed in two-pass assembly scheme, Can the operand ex...

Can the operand expression in an ORG statement contains forward references? If so, outline how the statement can be processed in a two-pass assembly scheme. ORG that is origin

Mapping design principle, The following definition of mapping is adapted fr...

The following definition of mapping is adapted from the first edition of the Set Book: Mapping concerns the relationship between controls and their effects in the world. Nearly al

Dfd, Give a 5-minute presentation on your team''s solution

Give a 5-minute presentation on your team''s solution

Dynamic programming, Given: • A sequence of n arrival times t0, t1, ..., ...

Given: • A sequence of n arrival times t0, t1, ..., tn-1, • a library of mlogically equivalent gates {(d0, c0), (d1, c1), ..., (dm-1,cm-1)} where d is delay and c is cost • a

Translate sentence into predicate logic - ai, Translate the following sente...

Translate the following sentences into predicate logic, using identity (=). a. Everyone was drunk except John. b. Christine rides a bike, but everyone else drives a car. c

Determine the address when network address prefixed by 1000, A network addr...

A network address prefixed by 1000 is? A network address prefixed through 1000 is Class B address.

Combining goals and design principles, The Set Book assignment should enabl...

The Set Book assignment should enable you to begin talking about the usability of interactive products in terms of a variety of parameters. Instead of simply saying 'nice cell phon

The complexity of adding two matrices, T he complexity of adding two matric...

T he complexity of adding two matrices of order m*n is mn

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