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

Give the sequence of procedure calls for server and client, Give the sequen...

Give the sequence of procedure calls for both server and client for connect ion-oriented application.   In connection oriented communication the order of Procedure call

Database management subsystem, (a) Explain, using suitable examples, the fu...

(a) Explain, using suitable examples, the functions of each of the sub system mentioned in the context of a large chain of supermarkets (i) Database Management Subsystem (ii)

Define the role of organizationin computer architecture, Define the role of...

Define the role of organizationin computer architecture The organization is the set of resources that realizes the architecture which include the CPU, the memory and I/O contro

What is the difference among declaration and definition, The declaration te...

The declaration tells the compiler that at some later point we plan to show the definition of this declaration. E.g.: void stars () //function declaration The definition con

Define the term busy hour, Define the term busy hour Busy Hour: Conti...

Define the term busy hour Busy Hour: Continuous 1- hour period lying completely in the time interval concerned, for that the traffic volume or the number of calls attempts is

Ethernet 10 base 2 is an example of which topology, Ethernet 10 Base 2 is a...

Ethernet 10 Base 2 is an example of               network topology. (A)  Bus                                           (B)  Ring (C)  Star

Explain multiple instruction and single data stream (misd), Multiple Instru...

Multiple Instruction and Single Data stream (MISD): In this type of organization multiple processing elements are ordered under the control of multiple control units. Every contro

Concurrently read concurrently write, Q. Concurrently read concurrently wri...

Q. Concurrently read concurrently write? It is one of the models derived from PRAM. In this model the processors access the memory locations simultaneously for reading and writ

What do you mean by interrupts, Q. What do you mean by Interrupts? The ...

Q. What do you mean by Interrupts? The term interrupt is an exceptional event which causes CPU to temporarily transfer its control from presently executing program to a separat

Io devices and i/o subsystem and direct memory access, Why IO devices canno...

Why IO devices cannot be connected directly to the system bus? Ans: The IO devices can't be directly connected to the system bus because the following reason A) The data tra

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