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 many precision resistors requires a weighted resistor, A weighted resis...

A weighted resistor digital to analog converter using N bits requires a total of ? Ans. Digital to analog converter, a weighted resistor using N bits needs a total of N precisi

What are stacks, What are stacks? A stack  is an abstract data type in...

What are stacks? A stack  is an abstract data type in which items are additional to and removed only from one end known as TOP. For example, consider the pile of papers on you

Explain about data segment, DATA SEGMENT  NUM1            DB      15h;...

DATA SEGMENT  NUM1            DB      15h;     First number   NUM2            DB      20h;     Second number  RESULT DB?  ; Put sum here  CARRY DB? ; Put any carry he

Mention the various IC logic families, Mention the various IC logic familie...

Mention the various IC logic families. Ans. Different  IC Logic Families: Digital IC's are fabricated through employing either the Unipolar or the Bipolar Technologies and are te

How can i execute a php script using command line, Just run the PHP CLI (Co...

Just run the PHP CLI (Command Line Interface) program and give the PHP script file name as the command line argument. For instance, "php myScript.php", assuming "PHP" is the comman

Explain the uses of keyboards, Explain the uses of Keyboards An alphanu...

Explain the uses of Keyboards An alphanumeric keyboard for a graphics system is used primarily as a device for entering text strings. Keyboards can also be provided with featur

Describe the term- macros, Describe the term- Macros A macro is a key o...

Describe the term- Macros A macro is a key or name which signifies a series of commands or key strokes. Many applications allow single nominated key or single word on a keyboar

File history.d1 contains a brief history of computing, File History.d1 cont...

File History.d1 contains a brief history of computing. There are no indentations in this file. Write a program to read this file, inserting five blank spaces at the beginning of ea

#title.sequential circuit, design modulo 12 up synchronous counter using t ...

design modulo 12 up synchronous counter using t flip flop

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