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

Prove boolean identities using boolean algebra, Prove the following Boolean...

Prove the following Boolean identities using the laws of Boolean algebra: ABC + AB ‾C + ABC ‾ = A(B + C) Ans. ABC+AB'C+ABC'=A(B + C) LHS AC(B+B')+AB(C+C') OR  AC+AB OR  A(B

Array is a pointer to pointer to int, Array is a pointer-to-pointer-to-int:...

Array is a pointer-to-pointer-to-int: at the first level, it points to a block of pointers, one for each row. That first-level pointer is the first one we allocate; it has nrows e

What is the need of a hybrid in telephone networks, What is the need of a h...

What is the need of a hybrid in telephone networks? Digital exchanges need receive and transmit signals upon separate two-wire circuits. It calls for two-wire to four-wire con

Important terms related to systems, Purpose, Environment, Boundary, Inputs,...

Purpose, Environment, Boundary, Inputs, and Outputs are a number of important terms related to Systems. A System's objective/purpose is the reason for its existence and refe

Handling multiple devices - computer architecture, Handling Multiple Device...

Handling Multiple Devices Interrupt Priority   Continue to accept interrupt requests from higher priority components   Disable interrupts from component at the sa

What are privileged instructions, What are privileged instructions?  So...

What are privileged instructions?  Some of the machine instructions that might cause harm to a system are designated as privileged instructions. The hardware permits the privil

Explain the processor-memory interconnection network (pmin), Processor-Memo...

Processor-Memory Interconnection Network (PMIN): It's a switch which attaches several processors to distinct memory modules. Connecting each processor to every memory module in

Subtraction 11011-11001 using 2's complement, Subtraction 11011-11001 using...

Subtraction 11011-11001 using 2's complement. Ans. 11011 - 11001 = A - B 2's complement of B = 00111 1 1 0 1 1 + 0 0 1 1 1 1 0 0 0 1 0 Ignore carry to get answer as 00010 = 2.

Explain a multiprogramming operating system, Explain a multiprogramming ope...

Explain a multiprogramming operating system? A multiprogramming operating system: It is system which allows more than one active user program or part of user program to be st

Internrt application, what is the significance of telecommunications deregu...

what is the significance of telecommunications deregulation for managers and organization

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