S.find() из библиотеки string

183
15 декабря 2016, 16:01

Какой алгоритм использует s.find() из библиотеки string (C++) для поиска подстроки в строке (КМП или что-то другое)?

Answer 1

Стандарт не накладывает никаких ограничений на сложность std::string::find, поэтому надо смотреть на конкретные имплементации стандартной библиотеки. В реализации библиотеки для gcc, например, используется наивный алгоритм со сложностью O(длина-строки * длина-образца) (см. basic_string<...>::find, char_traits<char>::compare).

READ ALSO
Как создать список объектов класса в с++?

Как создать список объектов класса в с++?

Требуется обработать данные, которые находятся или, вернее, формируются в списке объектов классаВозникает ряд общих вопросов: Каким образом...

209
LNK 2019  При вызове объекта шаблонного класса

LNK 2019 При вызове объекта шаблонного класса

Ошибка происходит при инициализации объекта класса Interface;

163
Ошибка error C2039: {ctor}: не является членом

Ошибка error C2039: {ctor}: не является членом

Дано: число N и последовательность a1, a2, … aN

298
Вставить символ в слово между символами

Вставить символ в слово между символами

Всем доброго времени суток

178