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

What is pattern, What is pattern? A pattern is a proven solution to a g...

What is pattern? A pattern is a proven solution to a general problem. Lots of patterns are used. There are patterns for analysis, architecture, design and execution. Patterns c

By which all systems are identified, In a LAN network every system is ident...

In a LAN network every system is identified by? In a LAN network all systems are identified through IP Address.

Explain definition of fibonacci, Explain definition of fibonacci Where ...

Explain definition of fibonacci Where an input value gives a trivial result, it is returned directly, otherwise the function calls itself, passing a changed version of the inpu

Evaluate bandwidth of disk drive, Q. Evaluate Bandwidth of disk drive? ...

Q. Evaluate Bandwidth of disk drive? Bandwidth:  Bandwidth can be measured in bytes per second. Sustained bandwidth is the average data rate at the time of a large transfer w

Where the grade of service is measured, The grade of service is measured in...

The grade of service is measured in (A) Percentage                                  (B)  Number (C)  Fractional Number                    (D)  Logarithmic Number  Ans

When can a user program execution be interrupted, When can a user program e...

When can a user program execution be interrupted? It won't be desirable to interrupt a program when an instruction is being executed and is in a state such as instruction decod

Define access time for magnetic disk, Define access time for magnetic disk....

Define access time for magnetic disk. The sum of seek time and rotational delay is known as access time for disks. Normal 0 false false false EN-IN

Explain arithmetic data processing instructions, Q. Explain Arithmetic Data...

Q. Explain Arithmetic Data Processing Instructions? These instructions carry outlogical and arithmetic operations on data. Arithmetic: The four fundamental operations are

Explain the real time process control, Explain the Real time process contro...

Explain the Real time process control Process control is a real time system. Though this is very different to real time (transaction) processing; this system generally involves

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