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

Fuzzy logic - artificial intelligence, Fuzzy Logic: In the logics we a...

Fuzzy Logic: In the logics we are here described above, what we have been concerned with truth: whether propositions and sentences are true. Moreover, with some natural langua

Define diffrent aspects of a system, Q. Define diffrent aspects of a System...

Q. Define diffrent aspects of a System? The aspects of a System are as below: Organization implies order and structure. It is aprearrangement of components which helps t

What is paging unit, Paging Unit Paging mechanism functions with 4K -...

Paging Unit Paging mechanism functions with 4K - byte memory pages or with a new extension available to Pentium with 4M byte-memory pages. In the Pentium, with the new 4M-byt

Difference between the fork -join and begin-end, Difference between the for...

Difference between the fork -join and begin-end. The fork - join keywords: Groups several statements together.Cause statements to be evaluated in parallel (all at the same

Define password methods and biometric systems, Define the password methods ...

Define the password methods and Biometric systems for implementing client server network security. In cyberspace, buyers and sellers cannot notice each other. Also within video

What is an unsigned integer constant, What is an unsigned integer constant?...

What is an unsigned integer constant? An integer constant is the number in the range of - 32768 to + 32767; because an integer constant always gets two bytes in memory and in t

Write hit policies, Write Hit Policies: Write through o   Upd...

Write Hit Policies: Write through o   Update next level on every write o   Cache is always clean o   A lots of traffic to next level (mostly write) Write

ATM is an example of which topology?, ATM is an example of? ATM is illu...

ATM is an example of? ATM is illustration of Star topology.

Show the steps of execution of instructions, Q. Show the steps of execution...

Q. Show the steps of execution of instructions? Fetch First Instruction into CPU: Step 1: Find/calculate the address of first instruction in memory. In this machine illust

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