РУҚА
Тапсырмалар № 10, 12 · ЕГЭ

Іздеу первого вхождения

Как определить позицию самого раннего появления символа или подстроки
2 мин чтенияҚиындық: Обновлено 29 қыркүйек 2026

Іздеу первого вхождения — это нахождение позиции, с которой начинается самое раннее появление заданного символа или фрагмента строки. Если искомый объект встречается несколько раз, выбирают вхождение с наименьшей позицией.

Іздеу первого вхожденияВхождение означает расположение одного объекта внутри другого; первым называют вхождение, начинающееся левее остальных.
Операция над строкой, возвращающая индекс первого символа искомого символа или подстроки. Если объект не найден, обычно возвращается специальный результат: например, \(-1\) или значение, заранее оговорённое в условии.

Позиция определяется с помощью индекса символа. В программировании индексация часто начинается с нуля: первый символ имеет индекс \(0\), второй — \(1\) и так далее. Поэтому важно отличать индекс от порядкового номера символа, который иногда считают с единицы.

\[i=\min\{j\mid s[j]=c\}\]1

В формуле \(s\) — исходная жол, \(c\) — искомый символ, а \(i\) — индекс его первого вхождения. Для подстроки условие \(s[j]=c\) заменяется проверкой, что подстрока начинается в позиции \(j\). Если подходящих позиций нет, множество пусто, и программа должна обработать случай «не найдено».

№
Пример

В строке ИНФОРМАТИКА символ А встречается в индексах \(7\) и \(9\), если считать первый символ с нуля. Первое вхождение имеет индекс \(7\). Если требуется вывести позицию, считая символы с единицы, ответ будет \(8\).

!
Не путайте индекс и нөмір позиции

Индекс первого вхождения при нумерации с нуля на единицу меньше обычного номера позиции. Также поиск первого вхождения не равен проверке вхождения: проверка отвечает только «есть или нет», а поиск возвращает конкретную позицию.

При последовательном просмотре строки достаточно идти слева направо и остановиться сразу после первого совпадения. Продолжать поиск после этого не нужно. Такой алгоритм особенно удобен, когда требуется найти символ, разделитель или начало фрагмента перед дальнейшей поиском подстроки.

Проверьте себя

Каков индекс первого символа А в строке ПАПА, если индексация начинается с нуля?

Главное за минуту

Главное

  • Іздеу первого вхождения возвращает позицию самого раннего появления символа или подстроки.
  • При индексации с нуля первый символ имеет индекс \(0\); индекс и нөмір позиции могут отличаться на единицу.
  • Если совпадение не найдено, используют специальный результат, например \(-1\), и отдельно обрабатывают этот случай.