Exponential search, Computer Engineering

Assignment Help:

Exponential Search

Another alternative to variable size decrease-and-conquer search is known as exponential search. This algorithm begins searching at the beginning of the list. It then progressively tests at larger intervals (A[2],A[4],A[8], . . .) until a straddling range is found which may contain the search value. A binary search is then performed on only the suspect range to ?nd the ?nal index position.

ALGORITHM ExponentialSearch (A[0 . . . n - 1], k)

// A variable-size decrease and conquer 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: set pos ← 2
2: while pos < n and A[pos] < k do
3: prev ← pos
4: pos ← pos  2
5: if pos > n - 1 then
6: pos ← n - 1
7: result ← BinarySearch(A[prev . . . pos], k)
8: if result = -1 then
9: return -1
10: else
11: return result + prev

Algorithm ExponentialSearch shows the pseudocode for this solution. Implement the algorithm.


Related Discussions:- Exponential search

By using what nested macro calls are expanded, Nested Macro calls are expan...

Nested Macro calls are expanded using the? Ans. By using the LIFO (Last in First out) Nested Macro calls are expanded.

Advantages and disadvantages of public key cryptography, What are the advan...

What are the advantages and disadvantages of public key cryptography? Advantages and Disadvantages: Improved security and convenience: private keys never require be trans

What is the relationship between clipping and repainting, When a window is ...

When a window is repainted by the AWT painting thread, it sets the clipping regions to the area of the window that needs repainting.

Explain compiler, What is compiler? A system software program known as ...

What is compiler? A system software program known as a compiler translates the high-level language program into a suitable machine language program having instruction such as t

protects against transcription, The last digit of a credit card number is ...

The last digit of a credit card number is the check digit, which protects against transcription errors like an error in a single digit or switching two digits. The following method

What is drive, Any data storage device. This having of  your CD-ROM drive, ...

Any data storage device. This having of  your CD-ROM drive, hard disk drive and floppy disk drive.

Final implementation of object oriented modelling, Final Implementation of ...

Final Implementation of Object oriented modelling Final Implementation: At this phase, the final execution of classes and  relationships developed while object design takes

Assembly lenguange , what is the work of pin daigram in 8086 microprocessor...

what is the work of pin daigram in 8086 microprocessor in assembly

Illustrate working of asynchronous counters, Q. Illustrate working of Async...

Q. Illustrate working of Asynchronous Counters? This is more frequently referred as ripple counter as the change that takes place in order to increment counter ripples through

What are near and far pointers, These days, they're pretty much obsolete; t...

These days, they're pretty much obsolete; they're definitely system-particular. They had to do with 16-bit programming under MS-DOS and perhaps some early on versions of Windows. I

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