РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
352 of 815 menu

Функция find_first_of

Функция find_first_of ищет в первом диапазоне первый элемент, который совпадает с любым элементом из второго диапазона. В первый и второй параметры мы передаем итераторы начала и конца первого диапазона, в третий и четвертый - итераторы начала и конца второго диапазона. Функция возвращает итератор на найденный элемент или итератор конца первого диапазона, если совпадений не найдено.

Синтаксис

find_first_of(first1, last1, first2, last2)

Пример

Давайте найдем в векторе {1, 2, 3, 4, 5} первый элемент, который встречается в векторе {3, 5, 7}:

#include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> v1 = {1, 2, 3, 4, 5}; vector<int> v2 = {3, 5, 7}; auto it = find_first_of(v1.begin(), v1.end(), v2.begin(), v2.end()); if (it != v1.end()) { cout << "Found: " << *it << endl; } else { cout << "Not found" << endl; } return 0; }

Результат выполнения кода:

"Found: 3"

Пример

Давайте найдем в строке "abcde" первый символ, который встречается в строке "xyz". Так как совпадений нет, функция вернет итератор конца:

#include <iostream> #include <string> #include <algorithm> using namespace std; int main() { string str1 = "abcde"; string str2 = "xyz"; auto it = find_first_of(str1.begin(), str1.end(), str2.begin(), str2.end()); if (it != str1.end()) { cout << "Found: " << *it << endl; } else { cout << "Not found" << endl; } return 0; }

Результат выполнения кода:

"Not found"

Смотрите также

  • функция find,
    которая ищет первый элемент с заданным значением
  • функция find_if,
    которая ищет первый элемент, удовлетворяющий условию
  • функция find_end,
    которая ищет последнее вхождение подпоследовательности
  • функция search,
    которая ищет первую подпоследовательность в диапазоне
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить