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

Define a technique of temporarily removing inactive program, is a technique...

is a technique of temporarily removing inactive programs from the memory of computer system? Swapping is a technique of temporarily eliminating inactive programs from the memor

What is modem?, A device, usually linked to a serial port of a computer, th...

A device, usually linked to a serial port of a computer, that transfer data over regular phone lines. Modem stands modulator demodulator; it changes a digital stream of data into s

How do you decide which integer type to use, It depends on our requirement....

It depends on our requirement. When we are needed an integer to be stored in 1 byte (means less than or equal to 255) we use short int, for 2 bytes we use int, for 8 bytes we use l

Explain the application of e-commerce in home banking, Explain the applicat...

Explain the application of E-Commerce in Home Banking. Home Banking: E-commerce is employed in Home Banking like one call or one click. Internet banking or online bank

What is asynchronous dram, What is asynchronous DRAM? In asynchronous D...

What is asynchronous DRAM? In asynchronous DRAM, the timing of the memory device is controlled asynchronously. A specialized memory controller circuit gives the essential contr

Essential features of an algorithm, Necessary features of an algorithm: ...

Necessary features of an algorithm: 1.Input: The algorithm should take zero or more input. 2. Output: The algorithm should generate one or more outputs.  3. Definiteness:

Java, mine sweeper algorithm.

mine sweeper algorithm.

What is computer to computer communication, Computer to computer communicat...

Computer to computer communication is: (A)  Simplex                                   (B)  Duplex (C)  Half Duplex                             (D)  Both Duplex and Half D

Connection machine fortran, Q. Connection Machine FORTRAN? Connection M...

Q. Connection Machine FORTRAN? Connection Machine Fortran was a subsequent SIMD language developed by Thinking Machines Corporation. Connection Machine Fortran incorporated all

Name of all sap databases, All SAP Databases are Relational Databases ...

All SAP Databases are Relational Databases is the all sap databases.

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