Você está na página 1de 3

Estrutura de Dados - 2o.

perodo de 2005
Gabarito da Primeira Avalia ~ao a Dist^an ia

1. Es rever as seguintes fun o~es em nota a~o O:


n3 1; n2 + 2 log n; 3n + 5:2 ; (n 1) + n 1 ; 302.
n n n n

Resposta: n3 1 = O(n3); n2 + 2 log n = O(n2); 3n + 5:2 = O(n ); (n 1) + n


n n n n n 1
=
O(n ); 302 = O(1).
n

2. Para ada item abaixo, responda \ erto" ou \errado", justi ando:


a. Se a omplexidade de melhor aso de um algoritmo for f , ent~ao o numero de passos
que o algoritmo efetua, qualquer que seja a entrada, e
(f ).
Resposta: erto, pois o melhor aso orresponde ao mnimo de passos que o algoritmo
realiza.
b. Se a omplexidade de pior aso de um algoritmo for f , ent~ao o numero de passos
que o algoritmo efetua, qualquer que seja a entrada, e (f ).
Resposta: errado. O erto seria dizer que o algoritmo efetua O(f ) passos qualquer
que seja a entrada, uma vez que o pior aso orresponde ao numero maximo de
passos.
. A omplexidade de melhor aso de um algoritmo para um erto problema e ne es-
sariamente maior do que qualquer limite inferior para o problema.
Resposta: errado, pois o limite inferior refere-se apenas a omplexidade de pior aso.
3. A u^
seq en ia de Fibona i e uma sequ^en ia de elementos f1; f2 ; : : : ; f , de nida do seguinte
n
modo: f1 = 0; f2 = 1; f = f 1 + f 2. Elaborar um algoritmo, n~ao re ursivo, para
j j j
determinar o elemento f da sequ^en ia, uja omplexidade seja linear em n.
n

Resposta:
f [1℄ := 0;
f [2℄ := 1;
para j = 2 : : : n fa a f [j ℄ := f [j 1℄ + f [j 2℄;
4. Determinar a express~ao da omplexidade media de uma bus a n~ao ordenada de n haves,
n par, em que as probabilidades de bus a das haves de ordem mpar s~ao iguais entre si,
sendo esse valor igual ao dobro da probabilidade de qualquer have par. Supor, ainda,
que a probabilidade de a have se en ontrar na lista e igual a q.
Resposta: Seja p a probabilidade de uma have mpar. Temos ent~ao que a probabilidade
de uma have par e p=2. Distribuindo a probabilidade q pelas n haves, temos que
(n=2)p + (n=2)(p=2) = q:
Con lumos que p = 4q=3n. Logo, a express~ao da omplexidade media neste aso e dada
pela express~ao:
C:M: = (1 + 3 + : : : + n 1) 34nq + (2 + 4 + : : : + n) 32nq + n(1 q)

onde a par ela nal n(1 q) refere-se ao aso em que a informa ~ao pro urada n~ao se
en ontra na lista.
5. Comparar algoritmos de bus a, inser a~o e remo ~ao em uma lista ordenada nas alo a ~oes
sequen ial e en adeada.
Resposta:
Bus a - O(n) tanto para alo a a~o sequen ial omo para en adeada.
Inser ~ao - O(n) para alo a a~o sequen ial, O(1) para alo a ~ao en adeada.
Remo ~ao - O(n) para alo a ~ao sequen ial, O(1) para alo a ~ao en adeada.
Obs: na prati a, a inser ~ao e a remo a~o exigem uma bus a previa. Portanto, na prati a,
todos os algoritmos a ima se tornam O(n).
6. Sejam duas listas, ordenadas, simplesmente en adeadas om no- abe a. Apresentar um
algoritmo que inter ale as duas listas de forma que a lista resultante esteja tambem
ordenada.
Resposta:
pont1 := ptlista1 " :prox % ponteiro para a lista 1
pont2 := ptlista2 " :prox % ponteiro para a lista 2
ptaux := ptlista1 % a lista resultante ini iara em ptlista1

enquanto pont1 6=  e pont2 6=  fa a


se pont1 " :info < pont2 " :info
ent~ao
ptaux " :prox := pont1
ptaux := pont1
pont1 := pont1 " :prox
sen~ao
ptaux " :prox := pont2
ptaux := pont2
pont2 := pont2 " :prox
m-enquanto
se pont1 = 
ent~ao ptaux " :prox := pont2
sen~ao ptaux " :prox := pont1
7. Des reva algoritmos de inser ~ao e remo a~o em pilhas e las, implementadas utilizando
alo a ~ao en adeada.
Resposta:
Inser ~ao na pilha:
o upar(pt)
pt " :info := novo valor
pt " :prox := topo
topo := pt
Remo ~ao da pilha:
se topo 6=  ent~ao
pt := topo
topo := topo " :prox
valor re uperado := pt " :info
deso upar(pt)
sen~ao underflow
Inser ~ao na la:
o upar(pt) pt " :info := novo valor
pt " :prox := 
se fim 6=  ent~ao
fim " :prox := pt
sen~ao ini io := pt
fim := pt
Remo ~ao da la:
se ini io 6=  ent~ao
pt := ini io
ini io := ini io " :prox
se ini io =  ent~ao fim := 
valor re uperado := pt " :info
deso upar(pt)
sen~ao underflow
8. Seja 1; 2; : : : ; n uma sequ^en ia de elementos que ser~ao inseridos e posteriormente retirados
de uma pilha P uma vez ada. A ordem de in lus~ao dos elementos na pilha e 1; 2; : : : ; n,
enquanto a de remo ~ao depende das opera o~es realizadas. Por exemplo, om n = 3, a
sequ^en ia de opera ~oes \in luir em P , in luir em P , retirar de P , in luir em P , retirar de
P , retirar de P " produzira a permuta ~ao 2; 3; 1 a partir da entrada 1; 2; 3. Representando
por I; R, respe tivamente, as opera o~es de inser a~o e remo ~ao da pilha, a permuta ~ao
2; 3; 1 pode ser denotada por IIRIRR. De um modo geral, uma permuta a~o e hamada
admiss
vel quando ela puder ser obtida mediante uma su ess~ao de in lus~oes e remo ~oes
em uma pilha a partir da permuta ~ao 1; 2; : : : ; n. Assim, por exemplo, a permuta ~ao
2; 3; 1 e admissvel. Pede-se:
(i) Determinar a permuta ~ao orrespondente a IIIRRIRR, n = 4.
Resposta: 3; 2; 4; 1
(ii) D^e um exemplo de permuta a~o n~ao admissvel.
Resposta: 4; 1; 2; 3 (para n = 4). Motivo: apos remover o 4, o 1 se en ontra no fundo
da pilha e n~ao pode ser o proximo a ser removido.

Você também pode gostar