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

Define static memories, Define static memories? Memories that consists ...

Define static memories? Memories that consists of circuits capable of retaining their state as long as power is applied is known as static memories

And-elimination rule, And-Elimination rule: In generally English says ...

And-Elimination rule: In generally English says that "if you know that lots of things are all true, so you know like any one of them is also true". Because you can specify a c

Requirements for cache simulator, Using your cache simulator and using smal...

Using your cache simulator and using smalltex.din as your memory trace determine the total miss rate, compulsory miss rate, capacity miss rate, and conflict miss rate for the follo

The height of the left sub tree and height of the right tree, The differenc...

The difference among the height of the left sub tree and height of the right tree, for each node, is almost one.  AVL - tree

Binary tree can be converted in to its mirror image, A binary tree can be c...

A binary tree can be converted in to its mirror image By traversing it in Preorder

Difference between viewstate and sessionstate, What Is The Difference Betwe...

What Is The Difference Between ViewState and SessionState? View State persist the values of controls of certain page in the client (browser) when post back operation done. When

What is web mail services, What is Web Mail Services? Web-based email s...

What is Web Mail Services? Web-based email services are also called as web mail or HTTP email. Unlike traditional POP email, web mail can be accessed from any PC using any web

Packet switching is used for which service, Packet switching is used for ...

Packet switching is used for (A)  Credit card verification (B)  Automated Teller Machine (C)  The internet and the World Wide Web (D)  All of the above  Ans

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