Π—Π°ΠΊΠ°Π·Π°Ρ‚ΡŒ курсовыС, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅, Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚Ρ‹...
ΠžΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Π·Π°ΠΊΠ°Π·. НСдорого!

ΠžΠ±Π·ΠΎΡ€ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ инструмСнтов

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

АтрибутныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ (подсчСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ: количСство ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ², цикломатичСская ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π΄Ρ€.). ΠœΠ΅Ρ‚ΠΎΠ΄ являСтся простым для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ большоС количСство случайных совпадСний, ΠΊΠΎΠ³Π΄Π° количСствСнныС значСния ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, Π½ΠΎ ΠΏΡ€ΠΈ этом Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ смысл участков ΠΊΠΎΠ΄Π° являСтся ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ. Π’ΠΎΠΊΠ΅Π½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строковых прСдставлСний ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠžΠ±Π·ΠΎΡ€ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ инструмСнтов (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Как ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ Ρ€Π°Π½Π΅Π΅, Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ задания ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ сильно ΠΏΠ΅Ρ€Π΅ΡΠ΅ΠΊΠ°ΡŽΡ‚ΡΡ с Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ Π² ΠΈΠ½Π΄ΡƒΡΡ‚Ρ€ΠΈΠΈ, ΠΏΠΎ ΡΡ‚ΠΎΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ стоит Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΈ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Ρ€Π΅ΡˆΠ°ΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° исходного ΠΊΠΎΠ΄Π° Π½Π° ΠΏΠ»Π°Π³ΠΈΠ°Ρ‚

Π§Ρ‚ΠΎΠ±Ρ‹ провСсти Π°Π½Π°Π»ΠΈΠ· ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² поиска ΠΏΠ»Π°Π³ΠΈΠ°Ρ‚Π° Π² Π½Π°Π±ΠΎΡ€Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ряд ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ исходного тСкста ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ устойчив эффСктивный Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ [9]:

  • 1. ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΊΠΎΠ΄Π°;
  • 2. ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ количСства пСрСносов строк, ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² ΠΈ ΠΎΡ‚ступов;
  • 3. ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π½Π° Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ (Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. НапримСр, сниТСниС ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ точности Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой);
  • 4. ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ;
  • 5. Π·Π°ΠΌΠ΅Π½Π° строковых ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… констант;
  • 6. пСрСстановка Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π°;
  • 7. Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ «Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ…» Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π° (Ρ‚.Π΅. Ρ‚Π°ΠΊΠΈΡ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ практичСски Π½Π΅ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹).

Π‘Ρ€Π΅Π΄ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнных ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² обнаруТСния ΠΏΠ»Π°Π³ΠΈΠ°Ρ‚Π° ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ [10]:

  • Β· Анализ строковых прСдставлСний ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° (поиск Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… строковых совпадСний ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠ΄Π°ΠΌΠΈ). Алгоритмы Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π°, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ быстрыми, Π½ΠΎ Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊΠΎΠ΄Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π±ΠΎΡ‚Π°ΠΌΠΈ Π² ΡΠ»ΡƒΡ‡Π°Π΅ ΠΏΠ»Π°Π³ΠΈΠ°Ρ‚Π°;
  • Β· Π’ΠΎΠΊΠ΅Π½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ строковых прСдставлСний ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² (конвСртация исходного ΠΊΠΎΠ΄Π° Π² Π½Π°Π±ΠΎΡ€ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈ ΠΈΡ… Π°Π½Π°Π»ΠΈΠ·). Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ связаны с ΠΏΡ€ΠΎΡΡ‚Ρ‹ΠΌΠΈ измСнСниями ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ количСства ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ², ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΈ Ρ‚. Π΄.;
  • Β· Анализ синтаксичСских Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π² (созданиС структур Π΄Π°Π½Π½Ρ‹Ρ… Π² Π²ΠΈΠ΄Π΅ Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‚ ΡΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ структуру ΠΊΠΎΠ΄Π°, ΠΈ ΠΈΡ… ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ·). Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ являСтся эффСктивным для обнаруТСния участков ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ своСй структуры Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ…, Ρ‡Ρ‚ΠΎ Π½Π°Π±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ довольно Ρ€Π΅Π΄ΠΊΠΎ;
  • Β· Анализ Π³Ρ€Π°Ρ„ΠΎΠ² Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² (Π°Π½Π°Π»ΠΈΠ· повСдСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°). ΠŸΠΎΠ΄Ρ…ΠΎΠ΄, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ написанных исходных ΠΊΠΎΠ΄ΠΎΠ². ΠŸΠΎΡ…ΠΎΠΆ Π½Π° Π°Π½Π°Π»ΠΈΠ· синтаксичСских Π΄Π΅Ρ€Π΅Π²ΡŒΠ΅Π²;
  • Β· АтрибутныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ (подсчСт Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ: количСство ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ², цикломатичСская ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π΄Ρ€.). ΠœΠ΅Ρ‚ΠΎΠ΄ являСтся простым для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ большоС количСство случайных совпадСний, ΠΊΠΎΠ³Π΄Π° количСствСнныС значСния ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, Π½ΠΎ ΠΏΡ€ΠΈ этом Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ смысл участков ΠΊΠΎΠ΄Π° являСтся ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ.

БущСствуСт довольно ΠΌΠ½ΠΎΠ³ΠΎ инструмСнтов для поиска ΠΏΠ»Π°Π³ΠΈΠ°Ρ‚Π° Π² Ρ€Π°Π±ΠΎΡ‚Π°Ρ… Π½Π° Π΅ΡΡ‚СствСнном языкС, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡΠ²Π»ΡΡŽΡ‚ΡΡ бСсплатными ΠΈ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½Ρ‹ Π² ΡΠ΅Ρ‚ΠΈ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… инструмСнтов ΠΈΡ‰ΡƒΡ‚ ΠΏΠ»Π°Π³ΠΈΠ°Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нахоТдСния Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠΏΠΈΠΉ участков ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° эффСктивно. Намного мСньшС инструмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ спСцифику ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… описанных Π²Ρ‹ΡˆΠ΅ Ρ‚ΠΈΠΏΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. НаиболСС популярными ΠΈ Π±Π»ΠΈΠ·ΠΊΠΈΠΌΠΈ ΠΊ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ критСриям инструмСнтами ΡΠ²Π»ΡΡŽΡ‚ΡΡ MOSS (Stanford University) [11] ΠΈ JPlag (Karlsruhe Institute of Technology) [12]. Но ΡΡ‚ΠΈ инструмСнты Π½Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Ρ… Ρ€Π°Π½Π΅Π΅ Ρ‚ΠΈΠΏΠΎΠ² ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ исходных Ρ€Π°Π±ΠΎΡ‚, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ измСнСниям Ρ‚ΠΈΠΏΠΎΠ² (3) ΠΈ (5).

Одним ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² для поиска ΠΏΠ»Π°Π³ΠΈΠ°Ρ‚Π° Π² Ρ‚Скстовых Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ… являСтся Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ поиска ΠΈ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ² [13,14]. Π”Π°Π½Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ относится ΠΊ Ρ‚ΠΈΠΏΡƒ Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ² строковых прСдставлСний ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ряд ΡΠΈΠ»ΡŒΠ½Ρ‹Ρ… сторон:

  • 1) высокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹;
  • 2) ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ°ΠΌ частСй Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° [15];
  • 3) ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ простая рСализация;
  • 4) ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ ΡˆΡƒΠΌΠ°ΠΌ (Ρ‚.Π΅. вставкС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… участков тСкста Π² ΠΈΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚) [15].

ИспользованиС Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Ρƒ обнаруТСния ΠΏΠ»Π°Π³ΠΈΠ°Ρ‚Π° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ, Π° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, связанныС с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌΠΈ Ρ‚ΠΈΠΏΠΎΠ² (6) ΠΈ (7) [15]. Алгоритм Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ части Π² ΠΏΠ°Ρ€Π°Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π½ΠΎ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»Π΅Π½ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌ Ρ‚ΠΈΠΏΠΎΠ² (1) — (5).

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π³Π΅Π½Π΅Ρ€Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ исходного ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π³Π΄Π΅ структуры ΠΊΠΎΠ΄Π°, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΡ…ΠΎΠΆΠ΅Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, сводятся ΠΊ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹ΠΌ. Π’Π΅ΠΌ самым Π½ΠΈΠ²Π΅Π»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ различия Π² ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²ΠΎΠΌ прСдставлСнии ΠΌΠ΅ΠΆΠ΄Ρƒ участками ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ схоТий Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ смысл.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π³Π΅Π½Π΅Ρ€Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ с ΠΈΡΡ…ΠΎΠ΄Π½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ для дальнСйшСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° поиска ΠΈ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡ ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠ².

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ