The element being searched for is not found in an array of
100 elements. What is the average number of comparisons
needed in a sequential search to determine that the element
is not there, if the elements are completely unordered?

Answer Posted / tek002

The question is asking for the average number of
comparisons, not the particular realization... On average
you need 50 comparisons since the element you are searching
could just as likely be at the end of the array, as in the
beginning of the array. (for a brute force sequential
search)

If you really want to be fancy, you can actually do it with
10 (sqrt(N)) steps. Since a comparison search is an oracle
based search, you can implement the Grover's Algorithm
which is a unsorted database searching algorithm which is
the best known oracle based search for unsorted databases
(in fact is is provably the best oracle based search for
unsorted arrays).

Is This Answer Correct ?    3 Yes 4 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is a pseudocode example?

501


What do you mean by overflow and underflow?

552


Define a queue?

569


How do you represent a linked list?

511


Differentiate null and void?

510






What is fibonacci search?

615


Define splay tree?

603


What is stack in data structure with the example?

437


What are sorting algorithms used for?

536


What are the parts of a linked list?

653


What is the best case complexity of quicksort?

524


Is binary tree balanced?

485


What does map stand for?

487


What is the order of selection sort?

463


What is the difference between array and stack in data structures?

514