sexta-feira, 29 de março de 2013

MO417 - QUESTÃO PROVA ORAL


Numero:

Enunciado: Dado o procedimento FUNCTION (A) abaixo, podemos afirmar que:

FUNCTION (A)
1             if (A.length%2!=0)
2                             max=min=A[1]
3                             iniciaFor=2
4             elseif(A[1] > A[2]){
5                             max = A[1]
6                             min = A[2]
7                             iniciaFor=3
8             else       max=A[2]
9                           min=A[1]
10                         iniciaFor=3
11           for (i= iniciaFor;i<A.length;i=i+2)
12                           if(A[i]>A[i+1])
13                                          if(max<A[i])
14                                                          max=A[i];
15                                          if (min>A[i+1])
16                                                          min=A[i+1];
17                           elseif(max<A[i+1])
18                                          max=A[i+1]
19                                           if (min>A[i])
20                                              min=A[i]
21           RETURN (max,min)
               
a) Busca os elementos máximo e mínimo independentemente, fazendo no máximo 3(n-3)/2 comparações.
b) Busca os elementos máximo e mínimo independentemente, fazendo no máximo 2n – 2 comparações.
c) Busca os elementos máximo e mínimo simultâneos, fazendo no máximo  (3n)/2 -2 comparações.
d) Busca os elementos máximo e mínimo simultâneos, fazendo no máximo 3⌊n/2⌋ comparações.
e) NDA

Ideia original de: Lucas Oliveira Batista

Nenhum comentário:

Postar um comentário