Π Π°Π±ΠΎΡ‚Π° с массивами являСтся Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ постоянно ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ Π½Π΅ просто ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π½ΠΎ ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ значСния. ПониманиС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ индСкс элСмСнта, критичСски Π²Π°ΠΆΠ½ΠΎ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ удалСния ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² структурС.

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

Рассмотрим Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ сцСнарии: ΠΎΡ‚ поиска ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния Π΄ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с нСупорядочСнными списками. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ обсудим Π½ΡŽΠ°Π½ΡΡ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ особСнности Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ поиска.

Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ индСксации массивов Π² 1Π‘

Массив Π² конфигурациях 1Π‘ прСдставляСт собой ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡Π΅Π½Π½ΡƒΡŽ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту присваиваСтся числовой ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ индСксом. НумСрация всСгда начинаСтся с нуля, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚: ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ индСкс 0, Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” 1, Π° послСдний β€” Массив.Π’Π“Ρ€Π°Π½ΠΈΡ†Π°().

ΠŸΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ массива Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ фиксированной ΠΈΠ»ΠΈ динамичСской. Если Π²Ρ‹ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ индСксу, ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰Π΅ΠΌΡƒ Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Π³Ρ€Π°Π½ΠΈΡ†Ρƒ, систСма выбросит ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅.

Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сущСствования элСмСнта ΠΏΠΎ индСксу часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠŸΡƒΡΡ‚ΠΎΠΉ() ΠΈΠ»ΠΈ сравнСниС с НСопрСдСлСно, ΠΎΠ΄Π½Π°ΠΊΠΎ сам Ρ„Π°ΠΊΡ‚ наличия индСкса опрСдСляСтся Π³Ρ€Π°Π½ΠΈΡ†Π°ΠΌΠΈ массива. Π—Π½Π°Π½ΠΈΠ΅ этих Π³Ρ€Π°Π½ΠΈΡ† позволяСт бСзопасно ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ индСксу (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Массив[-1] ΠΈΠ»ΠΈ Массив[Π Π°Π·ΠΌΠ΅Ρ€]) ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС выполнСния "ИндСкс находится Π²Π½Π΅ Π³Ρ€Π°Π½ΠΈΡ† массива".

ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Поиск для опрСдСлСния ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ

Π‘Π°ΠΌΡ‹ΠΉ распространСнный ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ способ ΡƒΠ·Π½Π°Ρ‚ΡŒ индСкс β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнный ΠΌΠ΅Ρ‚ΠΎΠ΄ Поиск. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ сканируСт массив с Π½Π°Ρ‡Π°Π»Π° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ элСмСнта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π°Π²Π΅Π½ искомому Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ. Если элСмСнт Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½, ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ -1.

Бинтаксис ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΡ€Π΅Π΄Π΅Π»ΡŒΠ½ΠΎ прост: ИндСкс = Массив.Поиск(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅). Алгоритм Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ эффСктивно для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈ срСдних массивов. Однако стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ поиск осущСствляСтся ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, Π° Π½Π΅ ΠΏΠΎ ссылкС Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Ссли это Π½Π΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ.

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°:

Массив = Новый Массив;

Массив.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π―Π±Π»ΠΎΠΊΠΎ");

Массив.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π“Ρ€ΡƒΡˆΠ°");

Массив.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π‘Π»ΠΈΠ²Π°");

Π˜Π½Π΄Π΅ΠΊΡΠ“Ρ€ΡƒΡˆΠΈ = Массив.Поиск("Π“Ρ€ΡƒΡˆΠ°"); // Π’Π΅Ρ€Π½Π΅Ρ‚ 1

Π˜Π½Π΄Π΅ΠΊΡΠ’ΠΈΡˆΠ½ΠΈ = Массив.Поиск("Π’ΠΈΡˆΠ½Ρ"); // Π’Π΅Ρ€Π½Π΅Ρ‚ -1

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ Поиск чувствитСлСн ΠΊ Ρ‚ΠΈΠΏΡƒ Π΄Π°Π½Π½Ρ‹Ρ…. Число 1 ΠΈ строка "1" Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ значСниями, ΠΈ поиск Π½Π΅ даст Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΏΡ€ΠΈ нСсоотвСтствии Ρ‚ΠΈΠΏΠΎΠ².

πŸ’‘

ΠœΠ΅Ρ‚ΠΎΠ΄ Поиск останавливаСтся Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΌ совпадСнии. Если Π² массивС Π΅ΡΡ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚Ρ‹, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ индСкс Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ….

Поиск с использованиСм ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Найти

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ Поиск являСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ Найти. Π₯отя ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ схоТ, Найти прСдоставляСт Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠ΅ возмоТности для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с коллСкциями Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² контСкстС Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ слоТного сравнСния.

ΠœΠ΅Ρ‚ΠΎΠ΄ Найти Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс элСмСнта ΠΈΠ»ΠΈ -1, Ссли поиск Π±Π΅Π·ΡƒΡΠΏΠ΅ΡˆΠ΅Π½. ОсновноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ΅ сравнСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², особСнно Ссли массив содСрТит слоТныС структуры ΠΈΠ»ΠΈ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

  • πŸ” ΠœΠ΅Ρ‚ΠΎΠ΄ Найти идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для поиска ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… экзСмпляров ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².
  • ⚑ ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Найти сопоставима с Поиск Π½Π° Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Ρ… массивах.
  • πŸ“‰ ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими объСмами Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°.

ИспользованиС этих ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ написания Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΡ… Ρ†ΠΈΠΊΠ»ΠΎΠ² для простых Π·Π°Π΄Π°Ρ‡. Однако, Ссли трСбуСтся Π½Π°ΠΉΡ‚ΠΈ всС вхоТдСния элСмСнта, придСтся ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ эти ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с цикличСским ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ΠΎΠΌ, сдвигая Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ поиска.

πŸ“Š Какой ΠΌΠ΅Ρ‚ΠΎΠ΄ поиска Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
Поиск
Найти
Π ΡƒΡ‡Π½ΠΎΠΉ Ρ†ΠΈΠΊΠ»
Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Ρ‡Π΅Ρ€Π΅Π· запрос

Π ΡƒΡ‡Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ» Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ

Π’ ситуациях, ΠΊΠΎΠ³Π΄Π° стандартныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ поиска Π½Π΅ подходят (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, трСбуСтся Π½Π°ΠΉΡ‚ΠΈ элСмСнт ΠΏΠΎ частичному совпадСнию ΠΈΠ»ΠΈ слоТному ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ), Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€ΠΈΠ±Π΅Π³Π°ΡŽΡ‚ ΠΊ Ρ€ΡƒΡ‡Π½ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Ρƒ. Π¦ΠΈΠΊΠ» Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ позволяСт ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ examining ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт массива.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ индСкс ΠΏΡ€ΠΈ использовании этого Ρ†ΠΈΠΊΠ»Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ-счСтчик ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π° ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π΅Ρ‘ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ классичСский ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ программирования, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ процСссом.

ИндСкс = 0;

ΠΠ°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉΠ˜Π½Π΄Π΅ΠΊΡ = -1;

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Из Массив Π¦ΠΈΠΊΠ»

Если Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.Π¦Π΅Π½Π° > 1000 Π’ΠΎΠ³Π΄Π°

ΠΠ°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉΠ˜Π½Π΄Π΅ΠΊΡ = ИндСкс;

ΠŸΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ;

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

ИндСкс = ИндСкс + 1;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π΄Π°Π΅Ρ‚ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ совпадСниС, Π° элСмСнт, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰ΠΈΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ критСриям, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, содСрТащий подстроку ΠΈΠ»ΠΈ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ свойство ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ использовании Ρ€ΡƒΡ‡Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ индСкса Π½ΡƒΠ»Π΅ΠΌ. Ошибка ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΡΠΌΠ΅Ρ‰Π΅Π½ΠΈΡŽ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ.

Π¦ΠΈΠΊΠ» По Π˜Π½Π΄Π΅ΠΊΡΡƒ для Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ контроля

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΡ‰Π½Ρ‹ΠΉ инструмСнт β€” Ρ†ΠΈΠΊΠ» По Π˜Π½Π΄Π΅ΠΊΡΡƒ. Он позволяСт ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎ массиву, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ нСпосрСдствСнно числовыС значСния индСксов. Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ СстСствСнный способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с индСксациСй, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ пСрСмСнная Ρ†ΠΈΠΊΠ»Π° сразу содСрТит Π½ΡƒΠΆΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Бинтаксис Ρ†ΠΈΠΊΠ»Π° выглядит Ρ‚Π°ΠΊ: Для ИндСкс = 0 По Массив.Π’Π“Ρ€Π°Π½ΠΈΡ†Π°() Π¦ΠΈΠΊΠ». Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° пСрСмСнная ИндСкс автоматичСски ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ значСния ΠΎΡ‚ 0 Π΄ΠΎ послСднСго элСмСнта. Π­Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² Ρ€ΡƒΡ‡Π½Ρ‹Ρ… счСтчиках.

Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ особСнно ΠΏΠΎΠ»Π΅Π·Π΅Π½, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°ΠΉΡ‚ΠΈ элСмСнт, Π½ΠΎ ΠΈ.modifyΡ€ΠΎΠ²Π°Ρ‚ΡŒ массив Π² процСссС поиска (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт). ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π²ΠΎ врСмя ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ часто ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкам, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Ρ†ΠΈΠΊΠ» ΠΏΠΎ индСксу позволяСт бСзопасно ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ позициями.

ΠœΠ΅Ρ‚ΠΎΠ΄ Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ условия
Поиск ИндСкс ΠΈΠ»ΠΈ -1 O(N) Π’ΠΎΡ‡Π½ΠΎΠ΅ совпадСниС
Найти ИндСкс ΠΈΠ»ΠΈ -1 O(N) Π’ΠΎΡ‡Π½ΠΎΠ΅ совпадСниС
Π¦ΠΈΠΊΠ» Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ВрСбуСтся счСтчик O(N) Π›ΡŽΠ±ΠΎΠ΅ условиС
Π¦ΠΈΠΊΠ» По Π˜Π½Π΄Π΅ΠΊΡΡƒ ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ Ρ†ΠΈΠΊΠ»Π° O(N) Π›ΡŽΠ±ΠΎΠ΅ условиС
πŸ’‘

Π¦ΠΈΠΊΠ» По Π˜Π½Π΄Π΅ΠΊΡΡƒ являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ бСзопасным Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ для удалСния элСмСнтов ΠΈΠ· массива Π²ΠΎ врСмя ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ассоциативными массивами

Часто Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡƒΡ‚Π°ΡŽΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ массивы ΠΈ ассоциативныС массивы (структуры ΠΈΠ»ΠΈ соотвСтствия). Π’ ассоциативных массивах понятиС "индСкс" замСняСтся Π½Π° "ΠΊΠ»ΡŽΡ‡". ΠšΠ»ΡŽΡ‡ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ число, Π½ΠΎ ΠΈ строка, Π΄Π°Ρ‚Π° ΠΈΠ»ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ.

Если ваша Π·Π°Π΄Π°Ρ‡Π° β€” Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ элСмСнта Π² структурС ΠΏΠΎ Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Поиск Π½Π΅ ΡΡ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для упорядочСнных списков. Для структур ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· Бвойство.

Однако, Ссли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ числовоС смСщСниС элСмСнта Π² структурС (Ρ‡Ρ‚ΠΎ трСбуСтся Ρ€Π΅Π΄ΠΊΠΎ), придСтся ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡ΠΈ Π² массив Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠšΠ»ΡŽΡ‡ΠΈ() ΠΈ ΡƒΠΆΠ΅ Π² этом массивС ΠΈΡΠΊΠ°Ρ‚ΡŒ индСкс Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°. Π­Ρ‚ΠΎ двухэтапный процСсс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ индСкс ΠΊΠ»ΡŽΡ‡Π° Π² Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅?

Π‘Π½Π°Ρ‡Π°Π»Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ массив ΠΊΠ»ΡŽΡ‡Π΅ΠΉ: ΠšΠ»ΡŽΡ‡ΠΈ = Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°.ΠšΠ»ΡŽΡ‡ΠΈ(). Π—Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Поиск Π½Π° этом массивС: ИндСкс = ΠšΠ»ΡŽΡ‡ΠΈ.Поиск(ΠΡƒΠΆΠ½Ρ‹ΠΉΠšΠ»ΡŽΡ‡).

ЧастыС ошибки ΠΈ оптимизация поиска

Одной ΠΈΠ· самых распространСнных ошибок являСтся ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния -1. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹ часто сразу ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ индСкс для доступа ΠΊ элСмСнту, Π½Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ² ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΡΡ‚ΡŒ поиска. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ падСнию прилоТСния.

ВсСгда провСряйтС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ использованиСм:

ИндСкс = Массив.Поиск(Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅);

Если ИндСкс <> -1 Π’ΠΎΠ³Π΄Π°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ = Массив[ИндСкс];

// Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π›ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ поиск (O(N)) становится ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ Π½Π° ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… массивах (дСсятки тысяч элСмСнтов). Если поиск выполняСтся часто, ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ массив ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ поиск, Π»ΠΈΠ±ΠΎ ΠΏΠ΅Ρ€Π΅ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ структуру Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ БоотвСтствиС для ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠ³ΠΎ доступа ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с коллСкциями ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘. ВсСгда ΡΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ΡΡŒ с синтаксичСским ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊΠΎΠΌ вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ вСрсии ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

β˜‘οΈ ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ поиском индСкса

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ (FAQ)

Π§Ρ‚ΠΎ Π²Π΅Ρ€Π½Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Поиск, Ссли элСмСнт встрСчаСтся Π² массивС нСсколько Ρ€Π°Π·?

ΠœΠ΅Ρ‚ΠΎΠ΄ Поиск всСгда Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ вхоТдСния элСмСнта, начиная сканированиС с Π½Π°Ρ‡Π°Π»Π° массива (индСкс 0). ΠŸΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚Ρ‹ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ.

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ индСксы для доступа ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ массива, ΠΊΠ°ΠΊ Π² Python?

НСт, Π² языкС 1Π‘ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ индСксация Π½Π΅ поддСрТиваСтся. Для доступа ΠΊ послСднСму элСмСнту Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Массив.Π’Π“Ρ€Π°Π½ΠΈΡ†Π°() ΠΈΠ»ΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ индСкс ΠΊΠ°ΠΊ Массив.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() - 1.

Как Π½Π°ΠΉΡ‚ΠΈ индСкс элСмСнта, Ссли извСстно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ Π΅Π³ΠΎ строкового значСния?

ВстроСнныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Поиск ΠΈ Найти ΠΈΡ‰ΡƒΡ‚ ΠΏΠΎΠ»Π½ΠΎΠ΅ совпадСниС. Для поиска ΠΏΠΎ части строки Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ) ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ БтрНайти Π²Π½ΡƒΡ‚Ρ€ΠΈ условия Ρ†ΠΈΠΊΠ»Π° для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ вхоТдСния подстроки.

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ индСксом массива ΠΈ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ строки Π² Π’Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΌ Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅?

ИндСкс массива начинаСтся с 0, Π° Π½ΠΎΠΌΠ΅Ρ€ строки Π² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ 1Π‘ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ начинаСтся с 1. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ пСрСносС Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· массива Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΡΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° ΠΎΠ΄Π½Ρƒ строку.