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

Techno hype - obstacle to information system, Techno hype - Obstacle to Inf...

Techno hype - Obstacle to Information System New technology has always been accompanied by a certain amount of euphoria that inevitably leads to unrealistic expectations place

Problem context and specification, Problem Context and Specification : ...

Problem Context and Specification : However the development of Inductive Logic Programming has been heavily formal in mathematical in nature it means the major people in the f

In which network configuration all data/information pass, A distributed net...

A distributed network configuration in which all data/information pass through a central computer is (A)  Bus network                            (B) Star network (C)  Rin

If the system is not booting what can we do, First we must go to bios and s...

First we must go to bios and should check boot sequence,local add statusOr we should check RAM & check h.d.d cable. check cd writer for cd or dvd

Fundamental components of a microprocessor, Q. Fundamental components of a ...

Q. Fundamental components of a microprocessor? The word 'micro' is used in microphones, microscopes, microwaves, microprocessors, microcomputers, microprogramming, microcodes e

How read and write is performed using sockets, How read and write is perfor...

How read and write is performed using sockets? An application program interface gives the details of how can an application program interacts along with protocol software. But

What will occur when contents of register are shifter left, What will occur...

What will occur when contents of register are shifter left, right? This is well known that into left shift all bits will be shifted left and LSB will be appended along with 0 a

Explain about hamming error correcting code, Q. Explain about Hamming error...

Q. Explain about Hamming error correcting code? Richard Hamming at Bell Laboratories worked out this code. We will only introduce this code with help of an illustration for 4 b

What is floppy drives, Q. What is Floppy Drives? Disks used with a flop...

Q. What is Floppy Drives? Disks used with a floppy disk drive are small removable disks fabricated of plastic coated with magnetic recording material. Disk rotates at 360RPM. F

Explain the wap stack in brief, Discuss the WAP stack in brief. The pro...

Discuss the WAP stack in brief. The protocol stacks part implemented by WAP Stack for the WAP development and research platform. The protocol stack will be exploited into many

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