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 optical mark recognition, Optical mark recognition (OMR)  OMR ...

Optical mark recognition (OMR)  OMR technology scans a printed form and reads pre-defined positions (where specific fields have been filled in for instance ?-?or _); system re

Data routing functions-network properties, Data Routing Functions The d...

Data Routing Functions The data routing functions are the functions which when implemented  the path among the source and the objective. In dynamic interconnection networks the

Determine why a new system is required, Q. Determine why a new system is re...

Q. Determine why a new system is required? Feasibility Study: - Feasibility study is the method of defining the current problem determining why a new system is essential and

Differentiate between programming tools and authoring tools, Diffrentiate p...

Diffrentiate programming tools and authoring tools Distinction between programming tools and authoring tools is not at first obvious. Though, authoring tools require less techn

Compute total and access methods, Write a program that input (from the user...

Write a program that input (from the user) the number of hours worked and hours pay rate for employees and output their total pay. The program should process an arbitrary number of

Compute the coefficient for classifier, Consider the data with categorical ...

Consider the data with categorical predictor x 1 = { green or red } and numerical predictor x 2 and the class variable y shown in the following table. The weights for a round

What is the meaning of toggle in a JK flip flop, In a JK Flip-Flop, toggle ...

In a JK Flip-Flop, toggle means ? Ans. Change the output to the opposite state implies the meas of toggle, in a JK Flip-Flop.

Why we need linker, Q. Why we need linker?  The linker: Joins as...

Q. Why we need linker?  The linker: Joins assembled module in one executable program, Produces an .EXE module and initializes with special instructions to facilitate

Explain the differences of casex and casez, Explain the differences of case...

Explain the differences of casex and casez over the case statement? casex operator has to be used when both high impedance value (z) and unknown (x) in any bit  has  to  be  t

Describe the fundamental characteristics of antennas, Question 1: (a) ...

Question 1: (a) Describe the two fundamental characteristics of antennas explaining in detail how it affects the security of wireless networks. (b) What is a wireless cli

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