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

How i-o interface communicate with processor, Q. How I-O interface communic...

Q. How I-O interface communicate with processor? The above illustration clearly specifies need communication between processor and I/O interface. This communication includes su

Types where relationship exists in electronic market place, What are the ty...

What are the types where relationship exists in Electronic Market Place? In this two forms of relationships can exist, they are: a. Customer/seller linkage is recognized at

Define the difference between union and structure, Define the difference be...

Define the difference between union and structure The main difference between union and structure is the storage allocation. In Union , for each variable the compiler allocates

Staircase, What is the aim of a stair case light is controlled by two switc...

What is the aim of a stair case light is controlled by two switches one at the top of the stairs and another at the bottom of the stair

What is the use of isolated i/o configuration, What is the use of isolated ...

What is the use of isolated I/O configuration.  In isolated I/O configuration the CPU has distinct input and output instructions and each of these instructions is associated wi

What are types of firewalls, What are types of firewalls? There are con...

What are types of firewalls? There are conceptually two types of firewalls as: 1. Network Level 2. Application Level

What is the advantages for linux, What is the advantages for Linux? ...

What is the advantages for Linux? Runs on old Hardware Low-Cost Linux is fully customizable in all its components Powerful Linux runs on low-end, cheap hardware

Dynamic programming, The fi rst task will involve doing a little background...

The fi rst task will involve doing a little background reading on Dynamic Programming to get up to speed. The second task is to write the code: Search Space Write a function whi

Representation of real-system, Maria opened her authentic Mexican restauran...

Maria opened her authentic Mexican restaurant MiCazuela in Tucson inthe 1980s. It quickly became popular for the tasty food and use of fresh organicproduce and all-natural meats. L

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