SlideShare uma empresa Scribd logo
Universidade Federal de Pernambuco
Centro de Inform´atica
Bacharelado em Ciˆencia da Computa¸c˜ao
IF672 Algoritmos e Estruturas de Dados — 2012.2
Profs. Katia Guimar˜aes, Paulo Fonseca
PRIMEIRA PROVA
21 de Fevereiro de 2013
• Esta prova cont´em 04 (quatro) quest˜oes.
• A dura¸c˜ao da prova ´e de 02 (duas) horas.
• A detec¸c˜ao de c´opia implicar´a na atribui¸c˜ao de nota 0 (zero) `a prova.
QUEST˜AO 1
Escreva em pseudo-c´odigo um algoritmo CheckBST que recebe como entrada um apontador root para a
raiz de uma ´arvore bin´aria T e devolve uma tripla (bst, min, max), onde bst ´e um booleano que indica
se T ´e uma ´arvore de busca bin´aria e min, max indicam, respectivamente, os valores do menor e maior
elemento de T.
QUEST˜AO 2
Considere uma ´arvore-B de grau m´ınimo t = 3. Represente a inser¸c˜ao das chaves
G, S, Q, K, C, L, H, T, V, W, M, R, N, P, A, B, X, Y, D, Z, E, U, F
nesta ordem. Para tal, exiba a configura¸c˜ao da ´arvore apenas imediatamente ap´os a inser¸c˜ao das
chaves que provocarem divis˜oes de n´os e desenhe tamb´em a configura¸c˜ao final da ´arvore.
QUEST˜AO 3
Um algoritmo de ordena¸c˜ao Π pode ser visto como uma fun¸c˜ao que recebe como entrada um vetor
V = (v1, . . . , vn) e devolve uma permuta¸c˜ao Π(V ) = (vπ(1), . . . , vπ(n)) com vπ(1) ≤ vπ(2) ≤ · · · ≤ vπ(n).
Um algoritmo de ordena¸c˜ao ´e dito est´avel quando, para duas posi¸c˜oes i, j quaisquer,
i  j ∧ vπ(i) = vπ(j) =⇒ π(i)  π(j).
Em outras palavras, um algoritmo de ordena¸c˜ao ´e est´avel quando preserva a ordem relativa original de
elementos idˆenticos.
Demonstre que o algoritmo Heapsort ´e est´avel ou forne¸ca um contra-exemplo de tamanho m´ınimo.
QUEST˜AO 4
Considere uma tabela de dispers˜ao (hash table) com m = 10 posi¸c˜oes utilizando a pol´ıtica de resolu¸c˜ao de
colis˜oes por endere¸camento aberto (open addressing) com sondagem linear (linear probing). Sabendo-se
que a posi¸c˜ao original de uma chave k na tabela ´e dada pela fun¸c˜ao de dispers˜ao
h0(k) = k mod m,
represente a inser¸c˜ao das chaves
13, 44, 21, 64, 58, 20, 38, 81, 98
nesta ordem. Para tal, exiba a configura¸c˜ao da tabela apenas imediatamente ap´os a inser¸c˜ao das
chaves para as quais houve uma colis˜ao, e represente tamb´em a configura¸c˜ao final da tabela.
EOF
If672cc p1 sol

Mais conteúdo relacionado

Destaque

Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro  -estruturas_de_dados_e_algoritmos_em_c.erivanildoLivro  -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Fernando Chuva
 
Algoritmos em c #1
Algoritmos em c #1Algoritmos em c #1
Algoritmos em c #1
Stark2009
 
1008 ProgramaçãO C Completo
1008 ProgramaçãO C Completo1008 ProgramaçãO C Completo
1008 ProgramaçãO C Completo
Fxx
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
Crishna Irion
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
rodfernandes
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
Mauro Pereira
 

Destaque (6)

Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro  -estruturas_de_dados_e_algoritmos_em_c.erivanildoLivro  -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
 
Algoritmos em c #1
Algoritmos em c #1Algoritmos em c #1
Algoritmos em c #1
 
1008 ProgramaçãO C Completo
1008 ProgramaçãO C Completo1008 ProgramaçãO C Completo
1008 ProgramaçãO C Completo
 
Lista de exercícios resolvidos
Lista de exercícios resolvidosLista de exercícios resolvidos
Lista de exercícios resolvidos
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 

If672cc p1 sol

  • 1. Universidade Federal de Pernambuco Centro de Inform´atica Bacharelado em Ciˆencia da Computa¸c˜ao IF672 Algoritmos e Estruturas de Dados — 2012.2 Profs. Katia Guimar˜aes, Paulo Fonseca PRIMEIRA PROVA 21 de Fevereiro de 2013 • Esta prova cont´em 04 (quatro) quest˜oes. • A dura¸c˜ao da prova ´e de 02 (duas) horas. • A detec¸c˜ao de c´opia implicar´a na atribui¸c˜ao de nota 0 (zero) `a prova. QUEST˜AO 1 Escreva em pseudo-c´odigo um algoritmo CheckBST que recebe como entrada um apontador root para a raiz de uma ´arvore bin´aria T e devolve uma tripla (bst, min, max), onde bst ´e um booleano que indica se T ´e uma ´arvore de busca bin´aria e min, max indicam, respectivamente, os valores do menor e maior elemento de T. QUEST˜AO 2 Considere uma ´arvore-B de grau m´ınimo t = 3. Represente a inser¸c˜ao das chaves G, S, Q, K, C, L, H, T, V, W, M, R, N, P, A, B, X, Y, D, Z, E, U, F nesta ordem. Para tal, exiba a configura¸c˜ao da ´arvore apenas imediatamente ap´os a inser¸c˜ao das chaves que provocarem divis˜oes de n´os e desenhe tamb´em a configura¸c˜ao final da ´arvore. QUEST˜AO 3 Um algoritmo de ordena¸c˜ao Π pode ser visto como uma fun¸c˜ao que recebe como entrada um vetor V = (v1, . . . , vn) e devolve uma permuta¸c˜ao Π(V ) = (vπ(1), . . . , vπ(n)) com vπ(1) ≤ vπ(2) ≤ · · · ≤ vπ(n). Um algoritmo de ordena¸c˜ao ´e dito est´avel quando, para duas posi¸c˜oes i, j quaisquer, i j ∧ vπ(i) = vπ(j) =⇒ π(i) π(j). Em outras palavras, um algoritmo de ordena¸c˜ao ´e est´avel quando preserva a ordem relativa original de elementos idˆenticos. Demonstre que o algoritmo Heapsort ´e est´avel ou forne¸ca um contra-exemplo de tamanho m´ınimo. QUEST˜AO 4 Considere uma tabela de dispers˜ao (hash table) com m = 10 posi¸c˜oes utilizando a pol´ıtica de resolu¸c˜ao de colis˜oes por endere¸camento aberto (open addressing) com sondagem linear (linear probing). Sabendo-se que a posi¸c˜ao original de uma chave k na tabela ´e dada pela fun¸c˜ao de dispers˜ao h0(k) = k mod m, represente a inser¸c˜ao das chaves 13, 44, 21, 64, 58, 20, 38, 81, 98 nesta ordem. Para tal, exiba a configura¸c˜ao da tabela apenas imediatamente ap´os a inser¸c˜ao das chaves para as quais houve uma colis˜ao, e represente tamb´em a configura¸c˜ao final da tabela. EOF