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

Can math operations be performed on a void pointer, Can math operations be ...

Can math operations be performed on a void pointer? No. Pointer addition and subtraction are based on advancing the pointer by a number of elements. By explanation, if you have

Determine the term- security, Determine the term- Security When using ...

Determine the term- Security When using Internet, security can be enhanced using encryption. Debit and credit card transactions can also be protected by a specific type of pas

Speed up - metrics for performance evaluation, Q. Speed Up - metrics for pe...

Q. Speed Up - metrics for performance evaluation? Speed up is ratio of time needed to execute a given program employing a specific algorithm on a machine with single processor

Visualization, Visualization Visualization is a general method in contr...

Visualization Visualization is a general method in contract to search based tools.  In this method visual aids are given like pictures to assist the programmer in evaluating th

Assignment for statical natural language processing, Hi I study master of ...

Hi I study master of computer science I have assignment for subject statical natural language processing . I need solved due date on 6 May2014 at 11 pm Australia time I need yo

Why isdn handles data pertaining, ISDN handles data pertaining to? ISDN...

ISDN handles data pertaining to? ISDN handles data pertaining to all digital services.

Explain usenet and newsgroups, Q. Explain Usenet and Newsgroups? In Int...

Q. Explain Usenet and Newsgroups? In Internet there exists another way to meet people and share information. One such way is through Usenet newsgroups. These are special groups

Explain session layer of osi model, Explain Session Layer of OSI Model. ...

Explain Session Layer of OSI Model. The session layer manages, establishes and terminates communication sessions. Communication sessions contain service of requests and serv

E-commerce in the market, Considering the fact that a lot of research has b...

Considering the fact that a lot of research has been done concerning e-commerce, what has been brought in this work is that there has been a lot of facts, studies, and experiments.

Differences b/w user level and kernel supported threads, What are the diffe...

What are the differences between user level threads and kernel supported threads? A thread, sometimes termed a lightweight process (LWP), is a fundamental unit of CPU utilizati

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