Sunteți pe pagina 1din 1

UNIVERSIDADE ESTADUAL DE MONTES CLAROS

Centro de Ci6ncias Exatas e Tecnokigicas


PPGMCS
PAA - RenE Veloso
6
Unlmonles

Lista de Exercicios I - ?L|OG|?OLT


L. Analise os algoritmos a seguir, indicando a complexidade de tempo de cada um por meio da contagem
da quantidade de vezes cada instruqdo 6 executada, considerando as execuq6es no pior caso e no
melhor caso (se houver).
a) Para a sendo uma lista (vetor) de ntimeros inteiros:
1. for i in range(n): 'n Il
2. prin(al[)
n
b) Para a, b e c sendo mhtrizes quadradas de tamanho n:
1. for i inrange(n): ' l^ t ..
foriiniande(n): ' rn C0^+1 'r : rD\ { rn
7
2. \
3. forkinrange(n):. rrA-\1- \ C,-.a*
\ T,, \) '
4. c[i][i] += a[i][k] * blkltil
c) Para cont iniciando em 0 :

L.i=1
2. while (i<=n)'
3, fcir j in range(n):
4. crlnt = cont + 1
5. i=i*2
d) O procedimento a seguir faz a busca por um elemento em um vetor e retorna a sua posiqdo
(indice). Considere que os (ndices iniciam em l-, A sendo uma lista de inteiros (vetor), n o seu
tamanho e x um elemento a ser procurado:
Procedimenfo LINEAR-SEARCH (A, n, xl
1. resposfa - NOT_FOUND
2.Paracada indice r, indo de 1 a n, em ordem:
3. Se A[t] = x, enteo:
4. resposta - i
5. Retorne o valcr de resPosta
e) Uma alternativa ao pr,ocedimento anterior 6:
Procedimenfo BETTER-LINEAR-SEARCH (A, n, x) 0,4^1, - W-, en
l.Parai * 1at6n: c^
2. Se A[t] = x, entdo:
3. retorne o valor de i
4. Retorne NOLFOUND
D Outra alternativa 6:
Procad i menfo SENTINEII-LINEAR-SEARCH (A, n, x)
L. fitima - A[n]
2. Alnl * x
3.lgualeiaL
4. Enquanto A[tl for diferente de x, faga:
5. lncremente i
6. Alnl *
rtftimo
7. Se i < n gu Alnl= x, entdo retorne o valor de i.
8. Caso contr6.rio, retorne NOT-FOUND
2. lmplemente os trCs algoritmos apresentados dos slides, para obter o m6ximo e o m[nimo de um
conjunto contendo N elementos. Execute os algoritmos para valores difefentes de N (at6 valores
suficientemente grandes), gerando casos de testes para o melhor caso e o pior caso. Mega o tempo
d,e execuqdo para cada algoritmo com relaqdo aos dois casos. Comente os resultados obtidos com
relag&o irs complexidades de tempo apresentando os grAficos com os tempos encontrados.
3. Faqa o mesmo experimento para os seguintes algoritmos de ordenaqdo: Selection-sort, lnsertion-sort
e Bubble-sort. Apresente os algoritmos (em pseudolinguagem) e mostre as suas complexidades de
tempo (melhor e pior casos), demonstrando como foram encontradas.

Os exercfcios 2 e 3 devem ser entregues no dia 28106, em formato de relat6rio t6cnico. Ndo 6
necessdrio incluir teKos introdut6rios e conclusivos, apenas os resultados dos experimentos com os devidos
comentArios e os grdficos das execuqSes. Os experimentos devem ser executados em ambiente
computacional contiolado. Apresente o setup experimental nos relat6rios, incluindo as configuraq6es de
m6quinas que foram utilizadas.

S-ar putea să vă placă și