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

Give explanation of common channel signalling, Explain Common channel signa...

Explain Common channel signalling. Common channel signalling: Signaling systems connection the variety of transmission systems, switching systems and subscriber equipments, i

State the term- interviewing, State the term- Interviewing This involv...

State the term- Interviewing This involves a one to one question & answer session between analyst and customer/employee. A good method if analyst wants to probe deeply into on

Define processor clock, Define processor clock. Processor clock is expl...

Define processor clock. Processor clock is explained as the time periods in which all operations and data transfer within the processor take place.

Describe the types of flip-flops and latches, Describe the types of flip-fl...

Describe the types of flip-flops and latches. Flip-flops are of two types as illustrated below: a. Positive edge triggered b.  negative edge triggered Latches are

Pseudocode, 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1

1 1 1 1 2 1 1 3 3 1 1 4 6 4 1

Define edge-triggered s-r flip-flop, Define Edge-triggered S-R flip-flop ...

Define Edge-triggered S-R flip-flop Basic Symbol small triangle, called the dynamic input indicator, is used to identify an edge-triggered flip-flop. Truth Table.

Explain macro definition and call, Explain Macro definition and call. ...

Explain Macro definition and call. Macro: The assembly language programming frequently finds this necessary to repeat certain piece of code several times during the course of

Define process for swapping into memory from the swap device, What are the ...

What are the criteria for choosing a process for swapping into memory from the swap device? The resident time of the processes in the change device, the priority of the process

Scsi bus - computer architecture, SCSI Bus:   Defined by ANSI - X3....

SCSI Bus:   Defined by ANSI - X3.131   50, 68 or 80 pins   Max. transfer rate - 160 MB/s, 320 MB/s. SCSI Bus Signals   Small Computer System Interface

Ida* search - artificial intelligence, IDA* Search - artificial intelligenc...

IDA* Search - artificial intelligence: A* search is a sophisticated and successful search strategy. In fact, a problem with A* search is that it must keep all states in its me

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