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

Determine the negation of the statement, Determine the negation of the stat...

Determine the negation of the statement? "2 is even and -3 is negative"? Answer: 2 is odd or -3 is not negative.

Show the mips addressing modes, Q. Show the MIPS Addressing Modes? MIP...

Q. Show the MIPS Addressing Modes? MIPS Addressing Modes MIPS employs various addressing modes: 1. Uses Register as well asimmediate addressing modes for operations.

What are threads, What are threads? A thread, sometimes termed as a lig...

What are threads? A thread, sometimes termed as a lightweight process (LWP), is a fundamental unit of CPU utilization; this comprises a thread ID a register set and a stack and

Explain cache memory, What is cache memory? It is a small, fast memory ...

What is cache memory? It is a small, fast memory that is inserted among large, slower main memory and the processor. It decreases the memory access time

Which header file is used for screen handling function, Which header file i...

Which header file is used for screen handling function:- The header files stdio.h having definitions of constants, macros and types, along with function declarations for stan

Illustrate the accumulator architecture, Accumulator Architecture: An accu...

Accumulator Architecture: An accumulator is anespecially designated register which supplies one instruction operand and receives result. Instructions in such machines are usually

Find the de broglie wavelength of electron, Q. Find the de Broglie waveleng...

Q. Find the de Broglie wavelength of electron in the fourth orbit of hydrogen atom. We know that,            λ = 2πr / n λ4 = 2πr 4 / 4  = 2π (4 2 r1) / 4  = 2 X

How can we pass selection and parameter data to a report, How can we pass s...

How can we pass selection and parameter data to a report? There are three options for passing selection and parameter data to the report. Using SUBMIT...WITH Using a rep

What is computer communications networks, Q. What is Computer communication...

Q. What is Computer communications networks? Computer communications networks are the outcome of a combination of computers and telecommunication products. An interconnected gr

Examples of input, (i)  Input a single ASCII character into BL register wit...

(i)  Input a single ASCII character into BL register without echo on screen  CODE SEGMENT  MOV AH, 08H;         Function 08H  INT 21H          ;         the character inpu

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