[SP-pm] [OT] Algorítimos de ordenação - performance artística

Alexei Znamensky russoz at gmail.com
Thu May 19 09:19:10 PDT 2011


cron, melhor gerar com números aleatórios

2011/5/19 Renato Santos <renato.cron em gmail.com>

> ta rodando
> mas o resultado eu sei, será 60 elementos ordernados ^^
>
> use Data::Dumper;
> use List::Util qw(shuffle);
>
>  sub bogosort {
>     my @a = @_;
>     my @sorted = sort {$a <=> $b} @a;
> print "Em ordem é @sorted, mas vale a pena conferir se você está com
> sorte\n";
>      while("@a" ne "@sorted") {
>        @a = shuffle(@a);
>     }
>     return @a;
>  }
>
> @b = (30..60, 0..30); # too complex order
>
> print Dumper  bogosort(@b);
> renato em renato-desktop:/projetos/youdb/nestle/datamotion_ps$ time perl
> /tmp/xxx.pl2
> Em ordem é 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
> 25 26 27 28 29 30 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
> 49 50 51 52 53 54 55 56 57 58 59 60, mas vale a pena conferir se você está
> com sorte
>
>
> 2011/5/19 Wesley Seidel <wesley.seidel em gmail.com>
>
>> Não precisa ser 100k não.
>> Ponha apenas 60 elementos e dê-nos o resultado.
>> :D
>>
>>
>> 2011/5/19 Bruno Buss <bruno.buss em gmail.com>
>>
>>> Agora testa ai com 100k elementos :)
>>>
>>>
>>> [ ]'s
>>>
>>> 2011/5/19 Renato Santos <renato.cron em gmail.com>
>>>
>>>> Me pareceu tão rapido...
>>>> use Data::Dumper;
>>>> use List::Util qw(shuffle);
>>>>
>>>>  sub bogosort {
>>>>     my @a = @_;
>>>>     my @sorted = sort {$a <=> $b} @a;
>>>>     while("@a" ne "@sorted") {
>>>>        @a = shuffle(@a);
>>>>     }
>>>>     return @a;
>>>>  }
>>>>
>>>> @b = (4,56,8,5,2,5,6,4);
>>>> renato em renato-desktop:/projetos/youdb/nestle/datamotion_ps$ time perl
>>>> /tmp/xxx.pl2
>>>> $VAR1 = 2;
>>>> $VAR2 = 4;
>>>> $VAR3 = 4;
>>>> $VAR4 = 5;
>>>> $VAR5 = 5;
>>>> $VAR6 = 6;
>>>> $VAR7 = 8;
>>>> $VAR8 = 56;
>>>>
>>>> real 0m0.058s
>>>> user 0m0.052s
>>>> sys 0m0.000s
>>>>
>>>> print Dumper  bogosort(@b);
>>>>
>>>> 2011/5/19 Nelson Ferraz <nferraz em gmail.com>
>>>>
>>>>> 2011/5/19 Wesley Seidel <wesley.seidel em gmail.com>
>>>>> > ahahaha
>>>>> > Se levou tudo isso com um quicksort, imagine o tempo pra fazer essa
>>>>> dança com um bubblesort.
>>>>>
>>>>> Imagina então um bogosort. :D
>>>>>
>>>>> http://en.wikipedia.org/wiki/Bogosort
>>>>> =begin disclaimer
>>>>>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>>>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>>>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>>>>> =end disclaimer
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Renato Santos
>>>> http://www.renatocron.com/blog/
>>>>
>>>> =begin disclaimer
>>>>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>>>> =end disclaimer
>>>>
>>>>
>>>
>>>
>>> --
>>> Bruno C. Buss
>>> http://brunobuss.wordpress.com/
>>> http://www.dcc.ufrj.br/~brunobuss/
>>>
>>> =begin disclaimer
>>>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>>> =end disclaimer
>>>
>>>
>>
>>
>> --
>> Wesley Seidel Carvalho
>> 11-6671-6118
>> 11-8169-1163
>> http://twitter.com/wseidel
>>
>>
>>
>> =begin disclaimer
>>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
>> =end disclaimer
>>
>>
>
>
> --
> Renato Santos
> http://www.renatocron.com/blog/
>
> =begin disclaimer
>   Sao Paulo Perl Mongers: http://sao-paulo.pm.org/
>  SaoPaulo-pm mailing list: SaoPaulo-pm em pm.org
>  L<http://mail.pm.org/mailman/listinfo/saopaulo-pm>
> =end disclaimer
>
>


-- 
Alexei "RUSSOZ" Znamensky
[russoz_gmail_com] [russoz.wordpress.com] [www.flickr.com/photos/alexeiz] [
https://github.com/russoz]
Only love / Can bring the rain / That makes you yearn to the sky
-------------- Pr�xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20110519/c6173b09/attachment.html>


More information about the SaoPaulo-pm mailing list