porovnani stringu-nejkratsi shoda

Tomas Penicka tomik na linux.fjfi.cvut.cz
Čtvrtek Červenec 22 09:15:57 CEST 2004


Ten napad s testovanim po sloupcich jsem nezaznamenal a ani me to nenapadlo.
Odhledneme-li od rezijnich casu, tak to musi byt po sloupcich rychlejsi,
presneji receno, provadi se mene porovnani, obzvlaste se to projevi, pokud
,,shodnost'' kazi posledni retezce. 
  Otazka je, kolik pameti je k dispozici, ten zpusob po sloupcich asi bude
zrat moc, rozhodne nevim, jak v Perlu nacist jenom prvni znak a necist pri
tom cely radek. Taky je pravda, ze to nebude fungovat, pokud ty retezce
budou pribyvat na standardnim vstupu.  To uz zalezi na situaci.

Taky se ty retezce daji rozdelit na _n_ zhruba stejne velkych skupin a
poslat to porovnavani na _n_ procesoru a pak porovnat dilci vysledky, ale to
uz bychom si moc hrali. 

Petr Vileta <petr na practisoft.cz> wrote:
> > Chapu dotaz tak, ze chcete najit nejdelsi shodnou cast.
> No jasne, blbe jsem se vyjadril ;-)

> > Vzdyt je to trapne jednoduche:
> > Porovnate prvni dva retezce (pomoci substr($neco, $i, 1) , kde $i jde od
> > nuly vys, pokud se ty dva retezce porad shoduji)
> > Spolecnou cast si zapamatujete a porovnavate se  tretim, vysledek si opet
> > zapamatujete atd.
> Padl tady navrh porovnavat stringy po sloupcich, tedy prvni znak ze vsech,
> druhy, ... a skoncit pri prvni neshode. Otazka je, co bude rychlejsi, jestli
> po sloupcich, nebo podle vas. Napisu si oboje a skusim casovy test pro
> nejakych 500 stringu a uvidim.
> --
> Petr


-- 
 Hi! I'm a .signature virus! Copy me into your ~/.signature to help me 
spread!                


Další informace o konferenci Linux