20
BogoSort 2.0 Henr“ikke” G. G. Pereira @ikkebr

BogoSort 2.0

Tags:

Embed Size (px)

DESCRIPTION

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

Citation preview

Page 1: BogoSort 2.0

BogoSort 2.0

Henr“ikke” G. G. Pereira

@ikkebr

Page 2: BogoSort 2.0
Page 3: BogoSort 2.0

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

Page 4: BogoSort 2.0
Page 5: BogoSort 2.0
Page 6: BogoSort 2.0

BogoSort

Page 7: BogoSort 2.0

BogoSort

enquanto Lista não ordenada:

embaralhe Lista

Page 8: BogoSort 2.0

BogoSort (em Python)

Page 9: BogoSort 2.0

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.

Page 10: BogoSort 2.0

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

Page 11: BogoSort 2.0

+ 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

Page 12: BogoSort 2.0

++ 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

Page 13: BogoSort 2.0

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

Page 14: BogoSort 2.0

Extrapolando um pouco

Page 15: BogoSort 2.0
Page 16: BogoSort 2.0

Conclusões

• O BogoSort funciona bem até 7 elementos.

Page 17: BogoSort 2.0

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.

Page 18: BogoSort 2.0

Conclusões

• A sorte é relativa.

Page 19: BogoSort 2.0

Conclusões

• Python é melhor que Java.

Page 20: BogoSort 2.0

Obrigado!

Henr“ikke” G. G. Pereira

[email protected]

@ikkebr