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

Application to calculate weekly payment of a company, Problem: A compa...

Problem: A company requires a software application to calculate the weekly payment for its employees. The information about the employees (employees' data) is kept in a file.

Synchronous sequential circuits, Q. Differentiate the Multiplexer and Demul...

Q. Differentiate the Multiplexer and Demultiplexer with respect to their concept, block diagram and circuit. Q. What is the difference between Synchronous sequential circuits an

How to create a bugzilla account? , 1. Enter your "E-mail address...

1. Enter your "E-mail address" and "Real Name" (or whatever name you need to call yourself) in the spaces given, then select the "Create Account" button. 2. Within moments, you

Explain active matrix or thin film transistor technology, Q. Explain Active...

Q. Explain Active Matrix or Thin Film Transistor technology? This is known as TFT (Thin Film Transistor) technology. In this there is a transistor at every pixel acting as a r

What is assembler, What is Assembler An assembler is a program which ta...

What is Assembler An assembler is a program which takes as input a symbolic language program and produces output as its binary machine language equivalent. The input is known a

Defines a macro, Defines a macro Defines a macro with the given name, h...

Defines a macro Defines a macro with the given name, having as its value the given replacement text. After that (for the rest of the current source file), wherever the preproce

Super ASCII string checker, In the Byteland country a string "s" is said to...

In the Byteland country a string "s" is said to super ascii string if and only if count of each charecter in the string is equal to its ascci value in the byteland country ascii co

Find minimum number of resource so that no deadlock arise, An operating sys...

An operating system contains 3 user processes each requiring 2 units of resource R. The minimum number of units of R such that no deadlocks will ever arise is? Ans. The minimum

In what way interrupts are classified in 8085, 8085 the interrupts are clas...

8085 the interrupts are classified as Software and Hardware interrupts.

What makes a circuit ''digital''?, All digital devices are made from circui...

All digital devices are made from circuits whichcan be switched between two possible states.These two states are represented by a voltagelevel at the output of the circuit e.g. 0V

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