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

Define various types of shift registers, What are various types of Shi...

What are various types of Shift Registers ? Ans: Kinds of Shift Registers: (i) SISO that is Serial-In Serial-Out Shift Register (ii) SIPO that is Serial-In P

Explain web service - .net component, Can you give an example of when it wo...

Can you give an example of when it would be appropriate to use a web service as opposed to a non-serviced .NET component? Services which help in stock trading by giving analysi

Reduced instruction set computer - risc, Reduced Instruction Set Computer (...

Reduced Instruction Set Computer (RISC): As we discussed before most of the modern CPUs are of the GPR (General Purpose Register) type. A few instances of such type of CPUs ar

Quiz help, which two class die class contain in computer programing.

which two class die class contain in computer programing.

Modular programming, Modular programming denotes to the practice of writing...

Modular programming denotes to the practice of writing a program as a sequence of independently assembled source files. Every source file is a modular program intended to be assemb

How do we prevent selected parameters of a module, How  do  I  prevent  sel...

How  do  I  prevent  selected  parameters  of  a  module  from  being  overridden  during instantiation? If a specific parameter within a module must be prevented from being ov

Calculate grade of service in a particular excahange, In a particular excha...

In a particular exchange during busy hour 1200 calls were offered to a group of trunks, during this time 6 calls were lost. The average call duration being 3 minutes Calculate

Show the importance of risc processors, Q. Show the Importance of RISC Proc...

Q. Show the Importance of RISC Processors? Reduced Instruction Set Computers recognize a comparatively limited number of instructions. One benefit of a reduced instruction set

Intentional hacking helps in maintaining better security, Intentional hacki...

Intentional hacking helps in maintaining better security Several companies employ professionals as security specialists whose basic job is to detect and cover loopholes in t

What are the types of smart cards used in e-commerce, What are the types of...

What are the types of Smart cards used in e-commerce? Generally there are 2 types of smart cards. Memory smart cards, which can be sighted as minuscule removable read/ write

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