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

Explain the terms constructors and destructors, When we initialize the form...

When we initialize the form at that time if we require to set any variable's value then we can set it by defining in constructor. Constructor's name always similar as class name an

What interprets can a browser contain besides html and http, What interpret...

What interprets can a browser contain besides HTML and HTTP? Besides an HTTP client and an HTML interpreter, a browser can have elements whihc enable the browser to perform any

What is store program control, What is store program control (SPC)? Wi...

What is store program control (SPC)? Within stored program control systems, a program or set of instructions for the computer that is stored in its memory and the instructions

Logical database reads the data from the database, Is it true that the Logi...

Is it true that the Logical Database reads the data from the database tables using Select Statements. Yes. We are coding that in Database part of LDB.

Explain the properties of hypercube, Q. Explain the properties of Hypercube...

Q. Explain the properties of Hypercube? Properties of Hypercube: Hypercube is both edge and node symmetric. The labels of any two neighbouring nodes vary in exactl

Search in problem solving - artificial intelligence, Search in Problem Sol...

Search in Problem Solving: If Artificial Intelligence can inform that the other science about anything, it is about problem solving and, in particular, how to research after s

Properties of e-cash, Properties: 1.  Monetary Value: Monetary value mu...

Properties: 1.  Monetary Value: Monetary value must be backed by either cash, bank - authorized credit cards or bank certified cashier's cheque. 2.  Interoperability: E-cash

Interfacing subroutines with parameter passing, Interfacing Subroutines wit...

Interfacing Subroutines with Parameter Passing Let's now write a C program which calls the assembly program for parameter passing. Let's extend the previous two programs such t

Naïve bayes algorithm for text classification, Assignment 3: Naïve Bayes al...

Assignment 3: Naïve Bayes algorithm for text classification. First part: In this assignment, we will redo the task of classifying documents (assignment 2) using the same R

What do you mean by digital computer, COMPUTER ORGANIZATION & ARCHITECTURE ...

COMPUTER ORGANIZATION & ARCHITECTURE 1. What do you mean by digital computer? Explain the block diagram of a digital computer. 2. What do you mean by Difference Engine? Expl

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