Алгоритмы STL. Алгоритмы упорядоченных интервалов

   
На этом шаге мы перечислим алгоритмы, предназначенные для работы с упорядоченными интервалами.

   
Алгоритмы упорядоченных интервалов требуют, чтобы интервалы, с которыми они работают, были изначально
упорядочены по соответствующему критерию. В таблице 1 перечислены все алгоритмы стандартной библиотеки
C++, предназначенные для упорядоченных интервалов. Достоинством этих алгоритмов является невысокая
сложность.

Таблица 1. Алгоритмы упорядоченных интервалов

НазваниеОписание
binary_search()Проверяет, содержит ли интервал заданный элемент
includes()Проверяет, что каждый элемент интервала также является элементом другого интервала
lower_bound()Находит первый элемент со значением, большим либо равным заданному
upper_bound()Находит первый элемент со значением, большим заданного
equal_range()Возвращает количество элементов в интервале, равных заданному значению
merge()Выполняет слияние элементов двух интервалов
set_union()Вычисляет упорядоченное объединение двух интервалов
set_intersection()Вычисляет упорядоченное пересечение двух интервалов
set_difference()Вычисляет упорядоченный интервал, который содержит все элементы интервала, не входящие в другой интервал
set_symmetric_difference()Вычисляет упорядоченный интервал, содержащий все элементы, входящие только в один из двух интервалов
inplace_merge()Выполняет слияние двух последовательных упорядоченных интервалов

   
Первые пять алгоритмов упорядоченных интервалов, перечисленные в таблице, являются немодифицирующими, поскольку
они ограничиваются поиском по заданному условию. Другие алгоритмы комбинируют два упорядоченных входных
интервала и записывают результат в приемный интервал. Как правило, результат выполнения алгоритмов тоже
упорядочен.

   
На следующем шаге мы рассмотрим численные алгоритмы.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий