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

Transportation model, advantages and disadvantages of northwest corner meth...

advantages and disadvantages of northwest corner method and least cost method

Give solution for readers-writers problem, Give a solution for readers-writ...

Give a solution for readers-writers problem using conditional critical regions. Solution for readers-writers problem using conditional critical regions: Conditional critical

Process of world wide web, Q. Process of World Wide Web? When you type ...

Q. Process of World Wide Web? When you type a URL in a web browser, this is what happens: 1. If URL contains a domain name, browser first connects to a domain name server an

Show block diagram of sequential circuits, Q. Show block Diagram of sequent...

Q. Show block Diagram of sequential circuits? A sequential circuit is an interconnection of storage elements and combinational circuits. The storage elements known as flip-flop

Does c have circular shift operators, No C don't have circular shift operat...

No C don't have circular shift operator. (Part of the reason why that is the sizes of C's types aren't precisely described----but a circular shift makes most sense when applied to

What is .net and .net framework, What is .NET / .NET Framework?  It is ...

What is .NET / .NET Framework?  It is a Framework in which Windows applications might be developed and run. The Microsoft .NET Framework is a platform for building, deploying,

Determine the nand gate, If  the input to T-flipflop is 100 Hz signal, the ...

If  the input to T-flipflop is 100 Hz signal, the final output of the three T-flipflops in cascade is ? Ans. The  final  output  of  the  three  T-flip-flops in cascade is 12

What are the advantages of open source system, What are the advantages of o...

What are the advantages of open source system? High-quality software Lesser hardware costs Integrated management No vendor lock-in Take control of our softwa

What are the main data structures used in rdbms, What are the main data str...

What are the main data structures used in the following areas: RDBMS, Network data model and Hierarchical data model? RDBMS = Array (i.e. Array of structures) Network data m

Basic performance equation, Explain the basic performance equation Ans...

Explain the basic performance equation Ans: The basic performance equation is following T = N * S/ R T =>  It is processor time required to execute a program N => act

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