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

How are problems of clock skew minimized, How are problems of clock skew mi...

How are problems of clock skew minimized? Clock skew, when done right, can also benefit a circuit. This can be intentionally introduced to reduce the clock period, at that the

What is test requirements, Test requirements are definite in the Requiremen...

Test requirements are definite in the Requirement Hierarchy in TestManager. The requirements hierarchy is a graphical outline of requirements and nested child requirements. Req

Largest and the second largest number, The largest and the second largest n...

The largest and the second largest number from a set of n distinct numbers can be found in    O (n)

Describe about the database marketing application of olap, Database marketi...

Database marketing tool or application helps a user or marketing professional in determining the right tool or plan for his valuable add campaign. This tool haves data from all sou

Draw logic circuit using 2-input NAND gates, A combinational circuit has 3 ...

A combinational circuit has 3 inputs A, B, C and output F.  F is true for following input combinations A is False, B is True A is False, C is True A, B, C

Translation table encryption technique to secure transaction, Discuss about...

Discuss about Translation table encryption technique to ensure secured transactions onto the net? Translation table: In this process each chunk of data is used like an of

Advantages of instruction set architecture, Advantages of Instruction set a...

Advantages of Instruction set architecture: Stack Advantages : it is simple Model of expression evaluation (reverse polish). Contain Short instructions. Disadvanta

What is task gantt, Task Gantt   Task Gantt shows different tasks being...

Task Gantt   Task Gantt shows different tasks being performed it implies that numerous kind of activities by set of processors connected to parallel computer as displayed in Fi

What is public, * Public, protected and private are 3 access specifier in C...

* Public, protected and private are 3 access specifier in C++. * Public data members and member functions are accessible outside the class. * Protected data members and memb

State the Process of sending signals to televisions, Determine about the Si...

Determine about the Signals to televisions Signals to televisions are now sent digitally thus need a computer to interpret as well as decode these signals into a sound/picture;

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