Дополнительные алгоритмы в C++
В основном учебнике уже были сортировка, поиск одного элемента, подсчет, накопление, копирование, разбиение и операции над отсортированными диапазонами.
Здесь собраны оставшиеся частые алгоритмы из #include <algorithm>
и #include <numeric>: сравнение и слияние последовательностей,
перестановки, замена, генерация, перенос, числовые свертки
и сканирование, а также erase_if в C++20.
Каждый урок опирается на пару итераторов begin и end
или на указатели на массив. Подключайте #include <algorithm>
или #include <numeric> по подсказке в тексте и вызывайте
функцию через std:: без директивы using namespace std.
Диапазон задают двумя итераторами: первый указывает на элемент,
второй - на позицию за последним. Так же работают алгоритмы
над std::vector и над C-массивом фиксированной длины.