00: unsigned short L1,L2,T;
01: AnsiString HA,HB,R;
02: if ((I == N) || (J == M)) {L[I+J*N] = 0;}
03: else{
04: if (L[I+J*N] == 10000)
05: {
06: T = HTML_STRING_LCS(A->Strings[I], B->Strings[J])
07: if (T<2) {
08: if (T==0) EQCHANGED->Add(String(HA.Length())+":"+HA+HB);
09: else EQCHANGED->Add(":"+String(HA.Length())+":"+HA+HB);
10: L[I+J*N] = 1+LIST_LCSL(A, B, I+1, J+1, N, M, L, SDIFF);
11: }
12: else{
13: L1 = LIST_LCSL(A, B, I+1, J, N, M, L, SDIFF, EQCHANGED);
14: L2 = LIST_LCSL(A, B, I, J+1, N, M, L, SDIFF, EQCHANGED);
15: if (L1<L2) L[I+J*N] = L2; else L[I+J*N] = L1;
|
|
00: unsigned short L1,L2,T;
01: AnsiString HA,HB,R;
03: if ((I == N) || (J == M)) {L[I+J*N] = 0;}
04: else{
05: if (L[I+J*N] == 30000)
06: {
07: T = HTML_STRING_LCS(A->Strings[I], B->Strings[J])
08: if (T<2) {
09: if (T==0) EQCHANGED->Insert(String(HA.Length())+":"+HA+HB);
10: else EQCHANGED->Insert(":"+String(HA.Length())+":"+HA+HB);
11: L[I+J*N] = 1+LIST_LCSL(A, B, I+1, J+1, N, M, L, SDIFF);
12: }
13: else{
14: L1 = LIST_LCSL(A, B, I+1, J, N, M, L, SDIFF, EQCHANGED);
18: delete L1;
19: delete L2;
|