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

Data parallel model - parallel programming model, In the data parallel mode...

In the data parallel model, many of the parallel work focus on performing operations on a data set. The data set is usually organized into a common structure, such as an array or a

Difference between visual check and parity check, Difference between Visual...

Difference between Visual check and Parity check Visual check This is checking for errors by comparing entered data with original document (NOTE: this is not the same as

Write a program that will solve a puzzle, You will write a program that wil...

You will write a program that will solve a version of the common newspaper puzzle \word search." In the puzzle you are given a grid lled with characters and a list of words to nd

Build and fix model, Why Build and fix model is considered as ad-hoc softwa...

Why Build and fix model is considered as ad-hoc software development model?

Mac and llc, how can we improve the way LLC and MAC are used for LAN operat...

how can we improve the way LLC and MAC are used for LAN operation.?

What is ipc, What is IPC? What are the various schemes available? The t...

What is IPC? What are the various schemes available? The term IPC (Inter-Process Communication) explains various ways by which different process running on some operating syste

What is public-key infrastructures, a. What are the differences among conve...

a. What are the differences among conventional signatures and digital signatures? Write a short note on "Attacks on digital signature". b. What is Public-Key Infrastructures

C, write a code to decode the string"i need 1000 bucks"

write a code to decode the string"i need 1000 bucks"

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