Você está na página 1de 2

Estrutura de Dados - 1o.

perı́odo de 2024

Primeira Avaliação à Distância

1. (0,3 cada) Para cada par de funções f e g abaixo, responda se f = O(g), g = O(f ) ou
ambos.

(a) f = n log n, g = 2n2 + 1


(b) f = 2n + n2 , g = nn
(c) f = n2 n, g = n3 + 10

(d) f = 21 n4 + 1, g = 5n4 + n3

2. (2,0) Sejam L1 e L2 duas listas sequenciais ordenadas (pode haver elementos repetidos).
Escreva um algoritmo que gere uma lista sequencial ordenada que corresponda à união
das listas L1 e L2 , mas sem elementos repetidos. Seu algoritmo deve percorrer L1 e L2
apenas uma vez. Determine a complexidade do seu algoritmo em função dos tamanhos
de L1 e L2 .

3. (0,5 cada) Considere a seguinte lista sequencial ordenada: 2, 4, 6, 8, 10, 12, 14, 16, 18,
20, 22. Utilizando busca binária, determine:

(a) Um elemento cuja busca resulte em um número mı́nimo de comparações.


(b) Um elemento pertencente à lista cuja busca resulte em um número máximo de
comparações. Determine quais comparações foram efetuadas.
(c) Um elemento não pertencente à lista cuja busca resulte em um número máximo
de comparações. Determine quais comparações foram efetuadas.

4. (0,5 cada) Desenhe uma árvore binária de busca T que satisfaça os requisitos pedidos, em
cada caso. Não se esqueça de colocar os valores dos nós.

(a) T é completa, estritamente binária, com altura 4 e número mı́nimo de nós.


(b) T é completa, não estritamente binária, com 4 nı́veis e número máximo de nós.
(c) T é estritamente binária com 7 nós e altura máxima.
5. (2,0) Sejam L1 e L2 duas listas ordenadas, simplesmente encadeadas com nó-cabeça.
Apresente um algoritmo que construa uma lista ordenada L contendo os elementos que
pertencem exclusivamente a L1 (isto é, aqueles elementos que pertencem a L1 mas não a
L2 ). Seu algoritmo deve percorrer L1 e L2 apenas uma vez.

6. (0,6 cada) Seja 1, 2, . . . , n uma sequência de elementos que serão inseridos e retirados de
uma pilha P uma vez cada. A ordem de inclusão dos elementos na pilha é fixa, sendo
igual a 1, 2, . . . , n. Por outro lado, a ordem de remoção não o é. A sequência de remoções
define uma permutação que representa o movimento dos nós na pilha.
Por exemplo, com n = 3, a sequência de operações “incluir em P , incluir em P , retirar
de P , incluir em P , retirar de P , retirar de P ” produzirá a permutação 2, 3, 1 a partir
da entrada 1, 2, 3. Representando por I, R, respectivamente, as operações de inserção e
remoção da pilha, a permutação 2, 3, 1 pode ser denotada por IIRIRR. De um modo
geral, uma permutação é chamada admissı́vel quando ela puder ser obtida mediante uma
sucessão de inclusões e remoções em uma pilha a partir da permutação 1, 2, . . . , n. Assim,
por exemplo, a permutação 2, 3, 1 é admissı́vel. Pede-se:

(a) Determine a permutação correspondente a IIIRRIRIRR, n = 5.


(b) A permutação 1, 2, . . . , n é sempre admissı́vel? Justifique.
(c) Dê um exemplo de permutação não admissı́vel para n = 5. Justifique.

Você também pode gostar