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


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : John Lepikhin                        2:5070/156     14 Mar 2002  13:56:28
 To : All
 Subject : оптимизировать код
 -------------------------------------------------------------------------------- 
 
         Есть строка синбаев: $packed = '5020/1 2 5070/3 4 5'.
 Требуется разодрать ее в хэш хэшей такого вида:
 
 $seen{5020}{1} = 1;
 $seen{5020}{2} = 1;
 $seen{5070}{3} = 1;
 $seen{5070}{4} = 1;
 $seen{5070}{5} = 1;
 
         Требуется делать это на приличных скоростях, поэтому регэкспы
 и прочее отпадают. Максимальных скоростей смог добиться лишь совсем не
 перловыми методами:
 
 foreach (split / /, $packed) {
     $pos = index ($_, '/');
     if ($pos != -1) {
         $host = substr ($_, 0, $pos);
         $node = substr ($_, $pos+1);
         $seen{$host}{$node}=1;
     } else {
         $seen{$host}{$_}=1;
     }
 }
 
         Есть мысли по оптимизации?
 -- 
 ... [лесные компьютерщики] -LNXuser 208417-
 --- Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.1 (Cuyahoga Valley)
  * Origin: A poorly-installed InterNetNews site (2:5070/156)
 
 

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

 Тема:    Автор:    Дата:  
 оптимизировать код   John Lepikhin   14 Mar 2002 13:56:28 
 оптимизировать код   Bulat Ziganshin   14 Mar 2002 19:03:42 
Архивное /ru.perl/35951a9be4d7b.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional