BogoSort 2.0

Tags:

Preview:

DESCRIPTION

Palestra Relampago apresentada na pythonbrasil[5] em caxias do sul.

Citation preview

BogoSort 2.0

Henr“ikke” G. G. Pereira

@ikkebr

http://en.wikipedia.org/wiki/Infinite_monkey_theorem

BogoSort

BogoSort

enquanto Lista não ordenada:

embaralhe Lista

BogoSort (em Python)

Quando usar

• Quando um código roda rápido demais.

• Quando se deseja mostrar a um cliente como ficaria o programa se ele fosse feito em Java.

• Em apresentações como essa.

Análise (número de shuffles)

0

500

1000

1500

2000

2500

3000

3500

3 elementos 4 elementos 5 elementos 6 elementos

Mínimo de Shuffles

Máximo de Shuffles

Média de Shuffles

+ Benchmark

0

5000

10000

15000

20000

25000

30000

35000

3 elementos 4 elementos 5 elementos 6 elementos 7 elementos

Mínimo de Shuffles

Máximo de Shuffles

Média de Shuffles

++ Benchmark

0

200000

400000

600000

800000

1000000

1200000

1400000

3 elementos 4 elementos 5 elementos 6 elementos 7 elementos 8 elementos 9 elementos

Mínimo de Shuffles

Máximo de Shuffles

Média de Shuffles

Listas com tamanho 10

0

1000000

2000000

3000000

4000000

5000000

6000000

3 elementos 4 elementos 5 elementos 6 elementos 7 elementos 8 elementos 9 elementos 10 elementos

Mínimo de Shuffles

Máximo de Shuffles

Média de Shuffles

Extrapolando um pouco

Conclusões

• O BogoSort funciona bem até 7 elementos.

Conclusões

• Com o aumento do número de elementos em uma lista, o tempo de execução do BogoSorttende ao tempo de inicialização do Eclipse.

Conclusões

• A sorte é relativa.

Conclusões

• Python é melhor que Java.

Obrigado!

Henr“ikke” G. G. Pereira

ikke@acidhacker.com

@ikkebr