Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Sergey Aleshin                       2:5020/400     11 Nov 2002  19:08:55
 To : Eugene Grosbein
 Subject : Re: двоичный поиск
 -------------------------------------------------------------------------------- 
 
 Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote:
 
 EG>
 EG>hash хуже бинарного поиска.
 EG>
 
 Вот скриптик:
 my %h;
 my $i;
 for($i=1;$i<=10000000;$i=$i+10) {
   $h{$i}=1;
 }
 print "Starting...\n";
 my $count=0;
 for(1..10000000) {
  if($h{$_}==1) {
    $count++;
   }
  }
 print "found: $count\n";
 
 Вот результат выполнения на Cel850/FreeBSD 4.7
 [~/tmp]$ time perl test.pl
 Starting...
 found: 1000000
 real    0m34.732s
 user    0m34.395s
 sys     0m0.328s
 
 Для миллиона элементов соответственно в 10 с лишним раз быстрее.
 
 Если шаг заполнения хеша увеличить, что время исполнения существенно
 снижается.
 
 Вот результат для шага 100 и миллиона элементов:
 [~/tmp]$ time perl test.pl
 Starting...
 found: 10000
 real    0m1.769s
 user    0m1.769s
 sys     0m0.000s
 
 Так что стоит проверить, не будет ли быстродействие с хешем достаточным.
 -- 
 Sergey Aleshin
 
 --- ifmail v.2.15dev5
  * Origin: RCD News Server (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: двоичный поиск   Sergey Aleshin   11 Nov 2002 19:08:55 
Архивное /ru.perl/14780a1d5fb1.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional