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

Face recognition using java, how we get a perfect tutorial for face recogn...

how we get a perfect tutorial for face recognition using java

Datastructure, deque insertion and deletion ..

deque insertion and deletion ..

COMPUTER SYSTEM, Classify computer systems according to capacity. How they ...

Classify computer systems according to capacity. How they are different from computers according to the classification of technology. Provide comparative study also.

Disadvantages of mpi, Disadvantages of MPI  Performance is restric...

Disadvantages of MPI  Performance is restricted by communication network between the nodes It can be harder to debug Needs more programming changes to go from seri

The concept of process-parallel computing, The Concept of Process Infor...

The Concept of Process Informally, a method is a program in execution, behind the program has been loaded in the main memory. However, a method is more than just a program code

Permanently resident pages - main memory, Permanently resident pages: ...

Permanently resident pages: Every virtual memory systems have memory areas that are "pinned down", for example cannot be swapped out to secondary storage, for instance:

Explain the low level language - computer programming, Explain the Low Leve...

Explain the Low Level Language - Computer Programming? An assembly language or a machine language is known as Low-level language which are closer to the hardware than are high-

Define ftp, FTP FTP (File Transfer Protocol) is the protocol used on th...

FTP FTP (File Transfer Protocol) is the protocol used on the Internet for sending files and is usually used for uploading / downloading files (web pages) to and from servers. T

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