Rychlost v Solarisu a v Linuxu

Tomas Znamenacek xznamen na fi.muni.cz
Středa Prosinec 13 12:57:03 CET 2000


Hana Skoumalova wrote:

> adresovat
> <v>hPc3-hTc4,hTc4,hPc4r{na},hPc4r{pro},hTc4-hPc4r{na},hTc4-hPc4r{pro}
> 
> <v> znamená začátek rámce
> Přesný význam značek jako hPc3 teď není důležitý, ale důležité je, že
> jednotlivé rámce jsou odděleny čárkou a jednotlivé členy uvnitř rámce
> jsou odděleny pomlčkou. Takže sloveso adresovat může mít v rámci členy
> hPc3, hTc4, hPc4r{pro} a hPc4r{na}, ale jenom v určitých kombinacích.
> Nejobtížnější část mého programu je "přerovnání" vstupu tak, aby se
> zjistilo, které členy jsou vzájemně variantní. Výsledek pak vypadá
> takto:
> 
> adresovat:      [0]:hTc4; [1]:[hPc3|hPc4r{na}|hPc4r{pro}];
> 
> Znamená to, že sloveso adresovat má v rámci člen hTc4, který je doplněn
> jedním z trojice hPc3, hPc4r{na} nebo hPc4r{pro}. Ještě by tam mělo být
> vyznačeno, které členy jsou nepovinné, ale to přijde až později.
> 
> Abych dostala kýžený výsledek, vyrábím různé tabulky a pomocí bitových
> operátorů zjišťuji, co je podmnožinou čeho, co má neprázdný průnik, atd.
> Data v různém stadiu zpracování si ukládám do různých (až
> trojrozměrných) polí a když se pak mají taková pole vynulovat, chvíli to
> trvá. 

Nebijte me do hlavy, ale nebylo by lepsi na tohle pouzit Perl? :-) Pokud
ten algoritmus skutecne neni nejak drasticky optimalizovany (tj. v
navrhu optimalizovany), mohlo by par regularnich vyrazu dosahnout
vysledku lepsich. Nebo ne? (chapu, ze to neni odpoved na puvodni dotaz,
ale tak me to napadlo a pripadlo mi to prinosne :-)

Zoul

-- 
Tomas Znamenacek - xznamen na fi.muni.cz; ICQ 85734197

Hi! I'm a signature virus, level 1. Help me spread! 
Copy me into Your signature and increase the level number.


Další informace o konferenci Linux