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

What is one-way association, What is one-way association? One-way assoc...

What is one-way association? One-way association means association will traverse in only in one direction and implement using the actual implementation. If the multiplicity is

Execution of a full instruction - computer architecture, Execution of a ful...

Execution of a full Instruction: Regard as the instruction: Add (R3), R1 Executing this particular instruction needed the below described actions: a) Fetch the

What is a data class, What is a Data Class? The Data class verifies in ...

What is a Data Class? The Data class verifies in which table space the table is stored when it is formed in the database

Types of classification-classification of parallel computers, Types Of Clas...

Types Of Classification The following classification of parallel computers have been recognized: 1)      Categorization based on the data streams and instruction 2)

Computer architecture, describe the block diagram of a system showing the f...

describe the block diagram of a system showing the following microprocessor memory system buses

Convert the following into sop form, Convert the following into SOP form ...

Convert the following into SOP form 1. (A+B) (B'+C) (A'+ C) 2. (A'+C) (A'+B'+C') (A+B') 3. (A+C) (AB'+AC) (A'C'+B)

Basic of C, write algorithm and draw flowchart for exchange the values of t...

write algorithm and draw flowchart for exchange the values of two variables.

Explain the system design of object oriented modelling, Explain the System ...

Explain the System Design of Object oriented modelling System Design : At this stage, the whole system model is designed. This is the phase where the complete system is divi

Jewel polishing, Byteland county is very famous for luminous jewels. Lumino...

Byteland county is very famous for luminous jewels. Luminous jewels are used in making beautiful necklaces. A necklace consists of various luminous jewels of particular colour. Nec

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