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

Boolean algebra, Boolean algebra. Boolean algebra mathematical method ...

Boolean algebra. Boolean algebra mathematical method based on human reasoning. In Boolean algebra only two states exist; true and false which are written as 1 (true) and 0 (fa

Explain e-brokerage, E-brokerage. An e-brokerage is an investment house...

E-brokerage. An e-brokerage is an investment house that permits you to buy and sell stocks and get investment information from its Web site.

Define the role of organizationin computer architecture, Define the role of...

Define the role of organizationin computer architecture The organization is the set of resources that realizes the architecture which include the CPU, the memory and I/O contro

Gralands robots, You have been contacted by Jean-Luc Picard commanding offi...

You have been contacted by Jean-Luc Picard commanding officer of Star Trek: The Next Generation. The Commander needs your support to develop a software routine to simulate the Robo

Classification of systems, Classification of Systems Systems may be cat...

Classification of Systems Systems may be categorized as follows: a)  Formal or Informal b)  Abstract or Physical c)  Closed or Open d)  Automated orManual.

more data items and methods, Create a class called ticket that records the...

Create a class called ticket that records the information of a performance ticket.The class should include at least six data items: performanceId, seatRow, seatNo, class, price, da

What are the application-oriented languages, What are the Application-orien...

What are the Application-oriented languages Application-oriented languages are highest level, meaning very easy to write and assembly languages are the lowest, meaning hardest

Btree, What should the size of ''t'' in btree be depending on the hard disk...

What should the size of ''t'' in btree be depending on the hard disk size

Vector reduction instructions-vector processing, Vector reduction Instructi...

Vector reduction Instructions : When operations on vector are being deduced to scalar items as the result, then these are the vector reduction instructions. These instructions are

How to design a sequential circuit, A sequential circuit is signified by a ...

A sequential circuit is signified by a time sequence of external inputs, external outputs and internal flip-flop binary states. So firstly a state diagram and state table is used t

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