Lista 1 de Exercı́cios de Avaliação de Desempenho
Bolas e Urnas e Bucket-Sort
Professores: Paulo Aguiar e Daniel S. Menasché
1
Bolas e Urnas
Considere m bolas e n urnas. As bolas são jogadas aleatoriamente nas urnas, sem reposição.
1. qual a probabilidade de a urna 1 conter r bolas?
2. qual a probabilidade de a urna 1 não conter nenhuma bola?
3. (aproximação Poisson) assuma que m r. Em particular m − r ≈ m e m(m −
1) . . . (m − r + 1) ≈ mr . Usando o resultado do item 1, qual a probabilidade da urna 1
conter r bolas?
4. desafio: qual a probabilidade de alguma urna não conter nenhuma bola?
2
Bucket-Sort
Considere uma lista com n = 2m elementos, e assuma que cada elemento seja um número
inteiro escolhido de forma uniforme e aleatória na faixa [0, 2k ), k ≥ m. A complexidade de
pior caso para ordenar uma lista de n números é O(n log n). E a complexidade de tempo
médio? Nesta questão, vamos derivar a complexidade de tempo médio de ordenação, usando
o algoritmo bucket-sort. O bucket-sort é um algoritmo determinı́stico, e a complexidade de
caso médio é calculada considerando-se a média sobre todas as possı́veis entradas.
1
1. considere n urnas. Na primeira etapa do bucket-sort, cada elemento é colocado em
uma urna. Na urna j são colocados os elementos cujos m dı́gitos mais significativos
são iguais a j. Por exemplo, se n = 210 , a urna 3 contém os elementos que começam
por 0000000011. Seja Xj o número de elementos na urna j. Caracterize Xj , ou seja,
calcule P (Xj = r), 0 ≤ r ≤ n.
2. assuma que alocar um elemento a uma urna leve tempo constante O(1). Logo, a
complexidade da primeira fase do algoritmo é O(n). Na segunda fase do algoritmo,
os elementos em cada urna precisam ser ordenados. Ordenar Xj elementos usando
bubble-sort consome tempo O((Xj )2 ) = cXj2 , 1 ≤ j ≤ n, onde c é uma constante.
• Qual a média de cXj2 ? Derive a expressão em função da pmf de Xj .
• Usando a pmf de Xj obtida no item 2.1, quanto tempo leva-se, em média, para
ordenar todos os elementos em uma urna?
3. na segunda etapa, quanto tempo leva-se para ordenar todos os elementos em todas as
urnas?
4. qual a complexidade média do bucket-sort?
2
Download

Lista 1 de Exerc´ıcios de Avaliaç˜ao de Desempenho Bolas e Urnas