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

How does tcp achieve reliability, How does TCP achieve reliability? One...

How does TCP achieve reliability? One of the most significant technologies is retransmission. While TCP stands data the sender compensates for packet loss through implementing

What is redefines clause, Redefines clause is used to permit the similar st...

Redefines clause is used to permit the similar storage allocation to be referenced by dissimilar data names.

Control traffic flowing in and out of the network, Firewalls use one or mor...

Firewalls use one or more of three methods to control traffic flowing in and out of the network:  Packet filtering - Packets (small chunks of data) are examined against a s

Advantage and disadvantage of threaded binary trees, Advantage  1.     ...

Advantage  1.       By doing threading we neglect the recursive method of traversing a Tree , which makes use of stack and consumes many memory and time . 2.       The node

Transfer data among computers on the internet, Tool that is used to transfe...

Tool that is used to transfer data/files among computers on the Internet TCP (Transfer control protocol)

What are the process states, What are the Process states? By the course...

What are the Process states? By the courses of implementation, processes change state. Status of a process is express by its present activity. Dissimilar practical states of

Function of in network access layer in tcp/ip protocol stack, What is the f...

What is the function of in network access layer in TCP/IP protocol stack? Function of Network Access Layer: The network access layer is the lowest layer within Internet

Depth-first search is different from breadth-first search, Depth-first sear...

Depth-first search is different from Breadth-first search in the following ways: A depth search traversal method goes to the deepest level of the tree first and then works up w

Determine about the locator devices, Determine about the Locator Devices ...

Determine about the Locator Devices Mouse  A mouse is small hand-held box used to position the screen cursor. Wheels or rollers on the bottom of the mouse can be used to r

Parallel computer architecture , Parallel Computer Architecture Intr...

Parallel Computer Architecture Introduction We have talked about the classification of parallel computers and their interconnection networks in that order in units 2 and

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