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

Real-time systems, This document is intended to help students get started w...

This document is intended to help students get started with the real-time systems (RTS) assignment. We will start on the assignment together in the laboratory. Students will then c

Define program counter, Define Program Counter(PC) The Program Counter ...

Define Program Counter(PC) The Program Counter holds the address of the next instruction to be read from memory after the current instruction is implemented.

Explain tree, Tree (recursive definition) A tree is a finite set of one...

Tree (recursive definition) A tree is a finite set of one or more than one nodes such that. (1) There is a specially designated node known as the root. (2) The left over

Explain interactive reporting, What is interactive reporting? A classic...

What is interactive reporting? A classical non-interactive report having of one program that makes a single list.  Instead of one extensive and detailed list, with interactive

Explain the stack storage allocation model, Explain the stack storage alloc...

Explain the stack storage allocation model. In a stack-based allocation, all objects are allocated in last-in, first-out data structure and a stack. For example: Recursive subr

Discuss program testing and debugging in detail, Discuss program testing an...

Discuss program testing and debugging in detail. In program debugging and testing significant steps are as follows: a. For the program, construction of test data b. Analy

Assignment, zero, one, two three address instructions

zero, one, two three address instructions

Which translator perform macro expansion, Which translator perform macro ex...

Which translator perform macro expansion, is called? Ans. Macro pre-processor perform macro expansion.

How much volts a CMOS logic device has approximately, The logic 0 level of ...

The logic 0 level of a CMOS logic device is approximately ? Ans. The low level is 0 volts approx in CMOS logic device.

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