Pagini recente » Istoria paginii zalgorithm | Diferente pentru zalgorithm intre reviziile 43 si 42 | Diferente pentru zalgorithm intre reviziile 34 si 33 | Diferente pentru zalgorithm intre reviziile 29 si 28 | Diferente pentru zalgorithm intre reviziile 20 si 19
Diferente pentru
zalgorithm intre reviziile
#20 si
#19
Nu exista diferente intre titluri.
Diferente intre continut:
** **Cazul 2.a: Z[i2] < lungBeta**(adica cea mai lunga secventa ce se gaseste la inceputul sirului si incepe la pozitia i2 nu depaseste zBox-ul)
=> **Z[i] = Z[i2];**
Fie stringul S :
!zalgorithm?A2.bmp!
!zalgorithm?A.bmp!
(nu prea are relevanta sa contina si caracatere)
Fie St = 7, Dr = 12 si i = 10; acum voi muta zBox-ul la inceput =>
lungAlpha = 6; lungBeta = 3;
St2 = 0; Dr2 = 5; i2 = 3;
Eu am calculat Z[i2] si stiu ca e < lungBeta => **Z[i] = Z[i2]**, e adevarat pentru ca Zbox e la fel cu Zbox2;
** **Cazul 2.b) Z[i2] > lungBeta** => **Z[i] = lungBeta**;
!zalgorithm?B3.bmp!
!zalgorithm?B2.bmp!
Acum voi face o modificare, i-ul va fi 11 nu 10 (pentru a fi mai clar pe exemplu)=>
St = 7, Dr = 12, I = 11; => St2 = 0; Dr2 = 5; i2 = 4;
Eu stiu acum ca Z[i2] > lungBeta; deci secventa [4..5] e la fel cu [0..1] si e la fel cu [11..12]
Avand in vedere ca Z[i2] > lungBeta => si caracterul 6 e la fel cu caracterul 2;
Doar ca se poate face o observatie din care rezulta ca **Z[i] = lungBeta**; Pentru a demonstra ca e asa voi presupune ca contrariul => Z[i] > lungBeta => S(13 = S(6) (care e = S(2)) daca acest lucru ar fi adevarat atunci Zbox-ul nu ar fi secventa [7..12] ci ar fi secventa [7..13] => Presupunerea initiala e **falsa** => **Z(i) = lungBeta**;
** **Cazul 2.c) Z[i2] = lungBeta** => **Z[i] = lungBeta + compara()**;
!zalgorithm?C2.bmp!
!zalgorithm?C.bmp!
Acum Z(i2) == lungBeta, de aici rezulta urmatoarele observatii :
S(2) != S(6)
S(6) != S(13)
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.