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 parsing, a. Define parsing? Give difference among top down parsing ...

a. Define parsing? Give difference among top down parsing and bottom up parsing. b. Determine the self-relocating programs? Why self-relocating programs are less efficient then

What do you mean by proc directive, Q. What do you mean by PROC Directive? ...

Q. What do you mean by PROC Directive? PROC Directive: Code segment comprises executable code for a program that includes one or more procedures defined initially with PROC dir

Program testing and debugging, Program testing and debugging: Program ...

Program testing and debugging: Program testing is the method of checking program, to verify that it satisfies its needs and to detect errors. These errors can be of any type-

What is instruction cycle, What is Instruction Cycle A program residing...

What is Instruction Cycle A program residing in the memory unit of the computer having of a sequence of instructions.  The program is implemented in the computer by going throu

Explain routing tone in strowger telephony, Explain routing tone in strowge...

Explain routing tone in strowger telephony with waveforms and the timings. The call-in-progress tone or routing tone is a 400 Hz or 800 Hz intermittent pattern. In electromec

Explain the scan code, What is meant by scan code?  When a key is press...

What is meant by scan code?  When a key is pressed on the keyboard, the keyboard controller places a code take to the key pressed into a part of the memory known as the keyboar

State the use of erasable programmable read only memory, Erasable programma...

Erasable programmable read only memory (EPROM) This is a special type of PROM which can be erased by exposing it to ultraviolet (UV) light. Once it has been erased, it can be r

Bit manipulation techniques, We can also use the logical operators to numbe...

We can also use the logical operators to numbers directly and  perform simple bit manipulation . The operators are     &  Bitwise AND     |  Bitwise OR     ^  Bitwise exclusiv

Drawback of these electromechanical and mechanical computers, Drawback of t...

Drawback of these electromechanical and mechanical computers The basic drawback was: Inertia/friction of moving components had limited speed. The data movement usin

Cgi programming, For this assignment you should construct a comprehensive w...

For this assignment you should construct a comprehensive web site for Dangar Winery of Puddledock Road Armidale, makers of fine table wines and ports since 1983. Chief winemaker, A

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