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

Programming languages array operations, Q. Programming languages array oper...

Q. Programming languages array operations? In programming languages array operations are written in compact form which frequently makes programs more understandable. Conside

Write a menu driven program, Q. Write a Menu driven program to convert the...

Q. Write a Menu driven program to convert the given Decimal number into Binary, Octal and Hexadecimal number. (Fractional numbers are allowed)

Read after write and write after write - data hazards, RAW  and WAW - Data ...

RAW  and WAW - Data hazards: RAW (read after write) - j tries to read a source before i writes it, hence j wrongly gets the old value .This is the most usual type of

Define interrupts, Interrupts are signals which cause the CPU to suspend th...

Interrupts are signals which cause the CPU to suspend the currently executing program and transfer to a special program known as an interrupt handler. Interrupt handler determines

Classification according to pipeline configuration, Classification accordin...

Classification according to pipeline configuration: According to the configuration of a pipeline, the following parts are recognized under this classification: Unifunct

Accept commands from the user, Your shell must accept commands from the use...

Your shell must accept commands from the user. The first step to implement this will be reading a line of input. This section will focus on what to do with the line of input after

What is sap dispatcher, What is SAP dispatcher? SAP dispatcher is the co...

What is SAP dispatcher? SAP dispatcher is the control agent that handles the resources for the R/3 applications.

Advantages and disadvantages of structured analysis, Advantages and Disadva...

Advantages and Disadvantages of Structured Analysis With time, you will find out that most customers understand structured methods better than object oriented (OO) methods. As

What is an "on request field" statement, What is an "on request Field" stat...

What is an "on request Field" statement? ON REQUEST The ABAP/4 Module is known as only if the user has entered the value in the field value as the last screen display .Th

Which TTL logic gate is used for wired anding, Which TTL logic gate is used...

Which TTL logic gate is used for wired ANDing ? Ans. Open collector output, TTL logic gate is used.

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