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

State and prove demorgan’s first theorems, State and prove Demorgan’s First...

State and prove Demorgan’s First theorems: Ans. Statement of First Theorem of De Morgan: = A‾. B‾   Proof: The two sides of the equation i.e. = is represented with logic

Development of information system, Development of information system must b...

Development of information system must be considered as capital investment: The developer of an information system must think about different solutions of a particular problem and

Define micro operation, Define Micro operation. The operations implemen...

Define Micro operation. The operations implemented on data stored in the registers are called Micro operation. A microperation is an elementary operation performed on the infor

Explain importance of different types of distributing frames, Explain impor...

Explain importance of the different types of distributing frames used in exchanges. Here MDF = main distribution frame; MF = main feeder; FP = feeder point; BF = branch f

Interpolation algorithm, Design two matlab algorithms for enlarging the 256...

Design two matlab algorithms for enlarging the 256x256 images into 512x512 images by using bilinear and bicubic interpolations   a)  Evaluate the interpolated images with the

Explain the real time system, What is real time system? A real time sys...

What is real time system? A real time system has well explained, fixed time constraints. Processing must be done within the explained constraints, or the system will fail. It i

Design of a software system, The aim of this Assignment is to demonstrate k...

The aim of this Assignment is to demonstrate knowledge about the analysis and design of a software system and understanding of the application of an object-oriented metho

Describe about second generation computers, Q. Describe about Second Genera...

Q. Describe about Second Generation Computers? Silicon brought advent of second generation computers. A two state device termed as a transistor was created from silicon. Transi

Explain the quantization error of an ADC, Explain the Quantization error...

Explain the Quantization error of an ADC. Ans. Quantization error- An analog voltage is within the range of 0 to 1V and for 3 bit output, the size of all intervals are

Explain difference between dynamic and static binding, Explain difference b...

Explain difference between Dynamic and static binding. Dynamic and static binding: Dynamic binding is a binding performed after the execution of a program has immediately beg

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