algorithm (STL/CLR)

Определяет шаблоны функций контейнеров STL/CLR, выполняющие алгоритмы.

Синтаксис

#include <cliext/algorithm>

Требования

Заголовок:<cliext/algorithm>

Пространство имен: cliext

Объявления

Function Description
adjacent_find (STL/CLR) Выполняет поиск двух смежных элементов, равных.
binary_search (STL/CLR) Проверяет, содержит ли отсортированная последовательность заданное значение.
copy (STL/CLR) Копирует значения из исходного диапазона в диапазон назначения, выполняя итерацию в направлении вперед.
copy_backward (STL/CLR) Копирует значения из исходного диапазона в целевой диапазон, выполняя итерацию в обратном направлении.
count (STL/CLR) Возвращает количество элементов в диапазоне, значения которых соответствуют заданному значению.
count_if (STL/CLR) Возвращает количество элементов в диапазоне, значения которых соответствуют заданному условию.
equal (STL/CLR) Сравнивает два диапазона, элемент по элементу.
equal_range (STL/CLR) Выполняет поиск упорядоченной последовательности значений и возвращает две позиции, разделяющие подсезону значений, равных заданному элементу.
fill (STL/CLR) Присваивает одно и то же новое значение каждому элементу в заданном диапазоне.
fill_n (STL/CLR) Назначает новое значение указанному количеству элементов в диапазоне, начиная с определенного элемента.
find (STL/CLR) Возвращает позицию первого вхождения указанного значения.
find_end (STL/CLR) Возвращает последнюю подсезону в диапазоне, идентичном указанной последовательности.
find_first_of (STL/CLR) Выполняет поиск диапазона для первого вхождения любого из заданных диапазонов элементов.
find_if (STL/CLR) Возвращает позицию первого элемента в последовательности значений, где элемент удовлетворяет указанному условию.
for_each (STL/CLR) Применяет указанный объект функции к каждому элементу в последовательности значений и возвращает объект функции.
generate (STL/CLR) Присваивает значения, созданные объектом-функцией каждому элементу в последовательности значений.
generate_n (STL/CLR) Присваивает значения, созданные объектом-функцией, указанному количеству элементов.
includes (STL/CLR) Проверяет, содержит ли один отсортированный диапазон все элементы во втором отсортированного диапазона.
inplace_merge (STL/CLR) Объединяет элементы из двух последовательных отсортированных диапазонов в один отсортированный диапазон.
iter_swap (STL/CLR) Меняет местами два значения, указанные парой определенных итераторов.
lexicographical_compare (STL/CLR) Сравнивает две последовательности, элемент по элементу, определяя, какая последовательность является меньшей из двух.
lower_bound (STL/CLR) Находит позицию первого элемента в упорядоченной последовательности значений, которая имеет значение больше или равно заданному значению.
make_heap (STL/CLR) Преобразует элементы из указанного диапазона в кучу, где первый элемент в куче является самым большим.
max (STL/CLR)) Сравнивает два объекта и возвращает больше двух объектов.
max_element (STL/CLR) Находит самый большой элемент в указанной последовательности значений.
merge (STL/CLR)) Объединяет все элементы из двух отсортированных диапазонов источников в один отсортированный диапазон назначения.
min (STL/CLR) Сравнивает два объекта и возвращает меньшее из этих двух объектов.
min_element (STL/CLR) Находит наименьший элемент в указанной последовательности значений.
mismatch (STL/CLR) Сравнивает два диапазона по элементу и возвращает первую позицию, в которой происходит разница.
next_permutation (STL/CLR) Переупорядочение элементов в диапазоне таким образом, чтобы исходное упорядочение было заменено лексически следующей большей перемутацией, если она существует.
nth_element (STL/CLR) Секционирует последовательность элементов, правильно размещая nэлемент последовательности, чтобы все элементы перед ним были меньше или равны, а все элементы, следовать за ним, больше или равно ему.
partial_sort (STL/CLR) Упорядочивает указанное число небольших элементов в диапазоне в порядке, отличном от порядка.
partial_sort_copy (STL/CLR) Копирует элементы из исходного диапазона в диапазон назначения, чтобы элементы из исходного диапазона были упорядочены.
partition (STL/CLR) Упорядочивает элементы в диапазоне таким образом, чтобы эти элементы, удовлетворяющие унарному предикату, предшествовали тем, которые не удовлетворяют его.
pop_heap (STL/CLR) Перемещает самый большой элемент из передней части кучи в конец, а затем формирует новую кучу из оставшихся элементов.
prev_permutation (STL/CLR) Переупорядочение последовательности элементов таким образом, чтобы исходное упорядочение было заменено лексически предыдущей большей перемутацией, если она существует.
push_heap (STL/CLR) Добавляет элемент, находящийся в конце диапазона, в существующую кучу, состоящую из предыдущих элементов диапазона.
random_shuffle (STL/CLR) Переупорядочение последовательности N элементов в диапазоне на один из N! возможных порядков, выбранном случайным образом.
remove (STL/CLR) Удаляет указанное значение из заданного диапазона без нарушения порядка оставшихся элементов и возвращает конец нового диапазона без указанного значения.
remove_copy (STL/CLR) Копирует элементы из исходного диапазона в диапазон назначения, за исключением того, что элементы указанного значения не копируются, не нарушая порядок оставшихся элементов.
remove_copy_if (STL/CLR) Копирует элементы из исходного диапазона в диапазон назначения, за исключением тех, которые удовлетворяют предикату, не нарушая порядок оставшихся элементов.
remove_if (STL/CLR) Удаляет элементы, удовлетворяющие предикату из заданного диапазона, не нарушая порядок оставшихся элементов. .
replace (STL/CLR) Заменяет элементы в диапазоне, который соответствует указанному значению новым значением.
replace_copy (STL/CLR) Копирует элементы из исходного диапазона в диапазон назначения, заменяя элементы, соответствующие указанному значению новым значением.
replace_copy_if (STL/CLR) Проверяет каждый элемент в исходном диапазоне и заменяет его, если он соответствует заданному предикату, одновременно копируя результат в новый диапазон назначения.
replace_if (STL/CLR) Проверяет каждый элемент в диапазоне и заменяет его, если он соответствует заданному предикату.
reverse (STL/CLR) Изменяет порядок элементов в диапазоне на обратный.
reverse_copy (STL/CLR) Изменяет порядок элементов в исходном диапазоне при копировании их в целевой диапазон.
rotate (STL/CLR) Меняет местами элементы в двух соседних диапазонах.
rotate_copy (STL/CLR) Меняет местами элементы в двух соседних диапазонах в пределах исходного диапазона и копирует результат в диапазон назначения.
search (STL/CLR) Выполняет поиск первого вхождения последовательности в целевой диапазон, элементы которого равны указанным в заданной последовательности элементов или элементы которого равноценны в смысле, заданным бинарным предикатом, элементам в заданной последовательности.
search_n (STL/CLR) Выполняет поиск первой подпоследовательности в диапазоне заданного числа элементов, имеющих определенное значение или связанных с этим значением отношением, указанным бинарным предикатом.
set_difference (STL/CLR) Объединяет все элементы, принадлежащие одному отсортированному исходному диапазону, но не второму отсортированному исходному диапазону, в один отсортированный диапазон назначения, где критерий упорядочивания может быть указан бинарным предикатом.
set_intersection (STL/CLR) Объединяет все элементы, входящие в оба исходных упорядоченных диапазона, в один упорядоченный диапазон назначения, где критерий порядка сортировки может быть указан бинарным предикатом.
set_symmetric_difference (STL/CLR) Объединяет все элементы, входящие в один, но не в оба исходных упорядоченных диапазона, в один упорядоченный диапазон назначения, где критерий порядка сортировки может быть указан бинарным предикатом.
set_union (STL/CLR)) Объединяет все элементы, входящие в хотя бы один из двух исходных упорядоченных диапазонов, в один упорядоченный диапазон назначения, где критерий порядка сортировки может быть указан бинарным предикатом.
sort (STL/CLR) Упорядочивает элементы в указанном диапазоне в не нисходящем порядке или согласно критерию упорядочивания, заданному бинарным предикатом.
sort_heap (STL/CLR) Преобразует кучу в упорядоченный диапазон.
stable_partition (STL/CLR) Разделяет элементы диапазона на два непересекающихся множества, при этом элементы, удовлетворяющие унарному предикату, расположены перед теми, которые ему не удовлетворяют, с сохранением относительного порядка равноценных элементов.
stable_sort (STL/CLR) Упорядочивает элементы в указанном диапазоне в не нисходящем порядке или согласно критерию упорядочивания, заданному бинарным предикатом, и сохраняет относительный порядок равноценных элементов.
swap (STL/CLR) Меняет местами значения элементов между двумя типами объектов, присваивая содержимое первого объекта второму объекту, а содержимое второго — первому.
swap_ranges (STL/CLR) Меняет местами элементы одного диапазона с элементами другого диапазона такого же размера.
transform (STL/CLR) Применяет заданный объект функции к каждому элементу в исходном диапазоне или к паре элементов из двух исходных диапазонов и копирует возвращаемые значения объекта функции в диапазон назначения.
unique (STL/CLR) Удаляет повторяющиеся элементы, расположенные в указанном диапазоне рядом друг с другом.
unique_copy (STL/CLR) Копирует элементы из исходного диапазона в диапазон назначения за исключением повторяющихся элементов, расположенных рядом друг с другом.
upper_bound (STL/CLR) Находит позицию первого элемента в упорядоченном диапазоне, который имеет значение больше указанного значения, где критерий упорядочивания может быть задан бинарным предикатом.

Участники

adjacent_find (STL/CLR)

Поиск двух соседних элементов, которые либо равны, либо удовлетворяют указанному условию.

Синтаксис

template<class _FwdIt> inline
    _FwdIt adjacent_find(_FwdIt _First, _FwdIt _Last);
template<class _FwdIt, class _Pr> inline
    _FwdIt adjacent_find(_FwdIt _First, _FwdIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция adjacent_findстандартной библиотеки C++ . Дополнительные сведения см. в adjacent_find.

Проверяет, есть ли в отсортированном диапазоне элемент, равный указанному значению или эквивалентный ему в смысле, заданном двоичным предикатом.

Синтаксис

template<class _FwdIt, class _Ty> inline
    bool binary_search(_FwdIt _First, _FwdIt _Last, const _Ty% _Val);
template<class _FwdIt, class _Ty, class _Pr> inline
    bool binary_search(_FwdIt _First, _FwdIt _Last,
        const _Ty% _Val, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция binary_searchстандартной библиотеки C++ . Дополнительные сведения см. в binary_search.

copy (STL/CLR)

Присваивает значения элементов из исходного диапазона диапазону назначения, выполняя итерации в исходной последовательности элементов и присваивая им новые позиции в прямом направлении.

Синтаксис

template<class _InIt, class _OutIt> inline
    _OutIt copy(_InIt _First, _InIt _Last, _OutIt _Dest);

Замечания

Эта функция работает так же, как и функция copyстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Копирование".

copy_backward (STL/CLR)

Присваивает значения элементов из исходного диапазона диапазону назначения, выполняя итерации в исходной последовательности элементов и присваивая им новые позиции в обратном направлении.

Синтаксис

template<class _BidIt1, class _BidIt2> inline
    _BidIt2 copy_backward(_BidIt1 _First, _BidIt1 _Last,
        _BidIt2 _Dest);

Замечания

Эта функция работает так же, как и функция copy_backwardстандартной библиотеки C++ . Дополнительные сведения см. в copy_backward.

count (STL/CLR)

Возвращает количество элементов в диапазоне, значения которых соответствуют заданному значению.

Синтаксис

template<class _InIt, class _Ty> inline
    typename iterator_traits<_InIt>::difference_type
        count(_InIt _First, _InIt _Last, const _Ty% _Val);

Замечания

Эта функция работает так же, как и функция countстандартной библиотеки C++ . Дополнительные сведения см. в разделе счетчика.

count_if (STL/CLR)

Возвращает количество элементов в диапазоне, значения которых соответствуют заданному условию.

Синтаксис

template<class _InIt, class _Pr> inline
    typename iterator_traits<_InIt>::difference_type
        count_if(_InIt _First, _InIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция count_ifстандартной библиотеки C++ . Дополнительные сведения см. в count_if.

equal (STL/CLR)

Сравнивает два диапазона поэлементно либо на признак равенства или равноценности в смысле, заданном бинарным предикатом.

Синтаксис

template<class _InIt1, class _InIt2> inline
    bool equal(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2);
template<class _InIt1, class _InIt2, class _Pr> inline
    bool equal(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2,
        _Pr _Pred);

Замечания

Эта функция работает так же, как и функция equalстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Равно".

equal_range (STL/CLR)

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

Синтаксис

template<class _FwdIt, class _Ty> inline
    _PAIR_TYPE(_FwdIt) equal_range(_FwdIt _First, _FwdIt _Last,
        const _Ty% _Val);
template<class _FwdIt, class _Ty, class _Pr> inline
    _PAIR_TYPE(_FwdIt) equal_range(_FwdIt _First, _FwdIt _Last,
        const _Ty% _Val, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция equal_rangeстандартной библиотеки C++ . Дополнительные сведения см. в equal_range.

fill (STL/CLR)

Присваивает одно и то же новое значение каждому элементу в заданном диапазоне.

Синтаксис

template<class _FwdIt, class _Ty> inline
    void fill(_FwdIt _First, _FwdIt _Last, const _Ty% _Val);

Замечания

Эта функция работает так же, как и функция fillстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Заливка".

fill_n (STL/CLR)

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

Синтаксис

template<class _OutIt, class _Diff, class _Ty> inline
    void fill_n(_OutIt _First, _Diff _Count, const _Ty% _Val);

Замечания

Эта функция работает так же, как и функция fill_nстандартной библиотеки C++ . Дополнительные сведения см. в fill_n.

find (STL/CLR)

Находит позицию первого вхождения элемента с заданным значением в диапазон.

Синтаксис

template<class _InIt, class _Ty> inline
    _InIt find(_InIt _First, _InIt _Last, const _Ty% _Val);

Замечания

Эта функция работает так же, как и функция findстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Поиск".

find_end (STL/CLR)

Ищет в диапазоне последнюю подпоследовательность, совпадающую с заданной последовательностью, или эквивалентной согласно условию, заданному двоичным предикатом.

Синтаксис

template<class _FwdIt1, class _FwdIt2> inline
    _FwdIt1 find_end(_FwdIt1 _First1, _FwdIt1 _Last1,
        _FwdIt2 _First2, _FwdIt2 _Last2);
template<class _FwdIt1, class _FwdIt2, class _Pr> inline
    _FwdIt1 find_end(_FwdIt1 _First1, _FwdIt1 _Last1,
        _FwdIt2 _First2, _FwdIt2 _Last2, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция find_endстандартной библиотеки C++ . Дополнительные сведения см. в find_end.

find_first_of (STL/CLR)

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

Синтаксис

template<class _FwdIt1, class _FwdIt2> inline
    _FwdIt1 find_first_of(_FwdIt1 _First1, _FwdIt1 _Last1,
        _FwdIt2 _First2, _FwdIt2 _Last2);
template<class _FwdIt1, class _FwdIt2, class _Pr> inline
    _FwdIt1 find_first_of(_FwdIt1 _First1, _FwdIt1 _Last1,
        _FwdIt2 _First2, _FwdIt2 _Last2, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция find_first_ofстандартной библиотеки C++ . Дополнительные сведения см. в find_first_of.

find_if (STL/CLR)

Находит позицию первого вхождения элемента, удовлетворяющего определенному условию, в диапазон.

Синтаксис

template<class _InIt, class _Pr> inline
    _InIt find_if(_InIt _First, _InIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция find_ifстандартной библиотеки C++ . Дополнительные сведения см. в find_if.

for_each (STL/CLR)

Применяет заданный объект функции к каждому элементу в прямом порядке в пределах диапазона и возвращает объект функции.

Синтаксис

template<class _InIt, class _Fn1> inline
    _Fn1 for_each(_InIt _First, _InIt _Last, _Fn1 _Func);

Замечания

Эта функция работает так же, как и функция for_eachстандартной библиотеки C++ . Дополнительные сведения см. в for_each.

generate (STL/CLR)

Присваивает значения, создаваемые объектом функции, каждому элементу в диапазоне.

Синтаксис

template<class _FwdIt, class _Fn0> inline
    void generate(_FwdIt _First, _FwdIt _Last, _Fn0 _Func);

Замечания

Эта функция работает так же, как и функция generateстандартной библиотеки C++ . Дополнительные сведения см. в статье "Создание".

generate_n (STL/CLR)

Присваивает значения, создаваемые объектом функции, указанному количеству элементов в диапазон и возвращается на позицию, следующую за последним присвоенным значением.

Синтаксис

template<class _OutIt, class _Diff, class _Fn0> inline
    void generate_n(_OutIt _Dest, _Diff _Count, _Fn0 _Func);

Замечания

Эта функция работает так же, как и функция generate_nстандартной библиотеки C++ . Дополнительные сведения см. в generate_n.

includes (STL/CLR)

Проверяет, содержит ли один отсортированный диапазон все элементы, содержащиеся во втором отсортированном диапазоне, где порядок сортировки или критерий эквивалентности элементов можно задать бинарным предикатом.

Синтаксис

template<class _InIt1, class _InIt2> inline
    bool includes(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2);
template<class _InIt1, class _InIt2, class _Pr> inline
    bool includes(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция includesстандартной библиотеки C++ . Дополнительные сведения см. в том числе.

inplace_merge (STL/CLR)

Объединяет элементы из двух последовательных упорядоченных диапазонов в один упорядоченный диапазон, где критерий порядка сортировки может быть указан бинарным предикатом.

Синтаксис

template<class _BidIt> inline
    void inplace_merge(_BidIt _First, _BidIt _Mid, _BidIt _Last);
template<class _BidIt, class _Pr> inline
    void inplace_merge(_BidIt _First, _BidIt _Mid, _BidIt _Last,
        _Pr _Pred);

Замечания

Эта функция работает так же, как функция inplace_merge стандартной библиотеки C++ Для получения дополнительных сведений см . inplace_merge.

iter_swap (STL/CLR)

Меняет местами два значения, указанные парой определенных итераторов.

Синтаксис

template<class _FwdIt1, class _FwdIt2> inline
    void iter_swap(_FwdIt1 _Left, _FwdIt2 _Right);

Замечания

Эта функция работает так же, как и функция iter_swapстандартной библиотеки C++ . Дополнительные сведения см. в iter_swap.

lexicographical_compare (STL/CLR)

Сравнивает две последовательности поэлементно для определения того, какой элемент из двух меньше.

Синтаксис

template<class _InIt1, class _InIt2> inline
    bool lexicographical_compare(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2);
template<class _InIt1, class _InIt2, class _Pr> inline
    bool lexicographical_compare(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция lexicographical_compareстандартной библиотеки C++ . Дополнительные сведения см. в lexicographical_compare.

lower_bound (STL/CLR)

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

Синтаксис

template<class _FwdIt, class _Ty> inline
    _FwdIt lower_bound(_FwdIt _First, _FwdIt _Last, const _Ty% _Val);
template<class _FwdIt, class _Ty, class _Pr> inline
    _FwdIt lower_bound(_FwdIt _First, _FwdIt _Last,
        const _Ty% _Val, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция lower_boundстандартной библиотеки C++ . Дополнительные сведения см. в lower_bound.

make_heap (STL/CLR)

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

Синтаксис

template<class _RanIt> inline
    void make_heap(_RanIt _First, _RanIt _Last);
template<class _RanIt, class _Pr> inline
    void make_heap(_RanIt _First, _RanIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция make_heapстандартной библиотеки C++ . Дополнительные сведения см. в make_heap.

max (STL/CLR)

Сравнивает два объекта и возвращает больший из них, где критерий упорядочивания может быть указан бинарным предикатом.

Синтаксис

template<class _Ty> inline
    const _Ty max(const _Ty% _Left, const _Ty% _Right);
template<class _Ty, class _Pr> inline
    const _Ty max(const _Ty% _Left, const _Ty% _Right, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция maxстандартной библиотеки C++ . Дополнительные сведения см. в разделе max.

max_element (STL/CLR)

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

Синтаксис

template<class _FwdIt> inline
    _FwdIt max_element(_FwdIt _First, _FwdIt _Last);
template<class _FwdIt, class _Pr> inline
    _FwdIt max_element(_FwdIt _First, _FwdIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция max_elementстандартной библиотеки C++ . Дополнительные сведения см. в max_element.

merge (STL/CLR)

Объединяет все элементы из двух исходных упорядоченных диапазонов в один упорядоченный диапазон назначения, где критерий порядка сортировки может быть указан бинарным предикатом.

Синтаксис

template<class _InIt1, class _InIt2, class _OutIt> inline
    _OutIt merge(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest);
template<class _InIt1, class _InIt2, class _OutIt, class _Pr> inline
    _OutIt merge(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция mergeстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Слияние".

min (STL/CLR)

Сравнивает два объекта и возвращает меньший из них, где критерий упорядочивания может быть указан бинарным предикатом.

Синтаксис

template<class _Ty> inline
    const _Ty min(const _Ty% _Left, const _Ty% _Right);
template<class _Ty, class _Pr> inline
    const _Ty min(const _Ty% _Left, const _Ty% _Right, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция minстандартной библиотеки C++ . Дополнительные сведения см . в мин.

min_element (STL/CLR)

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

Синтаксис

template<class _FwdIt> inline
    _FwdIt min_element(_FwdIt _First, _FwdIt _Last);
template<class _FwdIt, class _Pr> inline
    _FwdIt min_element(_FwdIt _First, _FwdIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция min_elementстандартной библиотеки C++ . Дополнительные сведения см. в min_element.

mismatch (STL/CLR)

Сравнивает два диапазона поэлементно либо на равенство или равноценность в смысле, заданном бинарным предикатом, и находит первую позицию, где наблюдается разница.

Синтаксис

template<class _InIt1, class _InIt2> inline
    _PAIR_TYPE(_InIt1)
        mismatch(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2);
template<class _InIt1, class _InIt2, class _Pr> inline
    _PAIR_TYPE(_InIt1)
        mismatch(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2,
            _Pr _Pred);

Замечания

Эта функция работает так же, как и функция mismatchстандартной библиотеки C++ . Дополнительные сведения см. в разделе о несоответствии.

next_permutation (STL/CLR)

Изменяет порядок элементов в диапазоне, чтобы исходный порядок был заменен перестановкой "лексикографически следующий больший", если такая существует, где смысл термина "следующий" может быть задан бинарным предикатом.

Синтаксис

template<class _BidIt> inline
    bool next_permutation(_BidIt _First, _BidIt _Last);
template<class _BidIt, class _Pr> inline
    bool next_permutation(_BidIt _First, _BidIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция next_permutationстандартной библиотеки C++ . Дополнительные сведения см. в next_permutation.

nth_element (STL/CLR)

Секционирует диапазон элементов, правильно размещая nэлемент последовательности в диапазоне, чтобы все элементы перед ним были меньше или равны, а все элементы, следовать за ним в последовательности, больше или равно ему.

Синтаксис

template<class _RanIt> inline
    void nth_element(_RanIt _First, _RanIt _Nth, _RanIt _Last);
template<class _RanIt, class _Pr> inline
    void nth_element(_RanIt _First, _RanIt _Nth, _RanIt _Last,
        _Pr _Pred);

Замечания

Эта функция работает так же, как и функция nth_elementстандартной библиотеки C++ . Дополнительные сведения см. в nth_element.

partial_sort (STL/CLR)

Упорядочивает указанное число меньших элементов в диапазоне в не нисходящий порядок или согласно критерию упорядочивания, заданному бинарным предикатом.

Синтаксис

template<class _RanIt> inline
    void partial_sort(_RanIt _First, _RanIt _Mid, _RanIt _Last);
template<class _RanIt, class _Pr> inline
    void partial_sort(_RanIt _First, _RanIt _Mid, _RanIt _Last,
        _Pr _Pred);

Замечания

Эта функция работает так же, как и функция partial_sortстандартной библиотеки C++ . Дополнительные сведения см. в partial_sort.

partial_sort_copy (STL/CLR)

Копирует элементы из исходного диапазона в диапазон назначения, где исходные элементы упорядочены по критерию "меньше либо равно" или согласно другому заданному бинарному предикату.

Синтаксис

template<class _InIt, class _RanIt> inline
    _RanIt partial_sort_copy(_InIt _First1, _InIt _Last1,
        _RanIt _First2, _RanIt _Last2);
template<class _InIt, class _RanIt, class _Pr> inline
    _RanIt partial_sort_copy(_InIt _First1, _InIt _Last1,
        _RanIt _First2, _RanIt _Last2, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция partial_sort_copyстандартной библиотеки C++ . Дополнительные сведения см. в partial_sort_copy.

partition (STL/CLR)

Разделяет элементы диапазона на два непересекающихся множества, при этом элементы, удовлетворяющие унарному предикату, расположены перед теми, которые ему не удовлетворяют.

Синтаксис

template<class _BidIt, class _Pr> inline
    _BidIt partition(_BidIt _First, _BidIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция partitionстандартной библиотеки C++ . Дополнительные сведения см. в разделе .

pop_heap (STL/CLR)

Удаляет наибольший элемент из начала кучи до позиции, следующей за последней, в диапазоне, а затем формирует новую кучу из оставшихся элементов.

Синтаксис

template<class _RanIt> inline
    void pop_heap(_RanIt _First, _RanIt _Last);
template<class _RanIt, class _Pr> inline
    void pop_heap(_RanIt _First, _RanIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция pop_heapстандартной библиотеки C++ . Дополнительные сведения см. в pop_heap.

prev_permutation (STL/CLR)

Изменяет порядок элементов в диапазоне, чтобы исходный порядок был заменен перестановкой "лексикографически следующий больший", если такая существует, где смысл термина "следующий" может быть задан бинарным предикатом.

Синтаксис

template<class _BidIt> inline
    bool prev_permutation(_BidIt _First, _BidIt _Last);
template<class _BidIt, class _Pr> inline
    bool prev_permutation(_BidIt _First, _BidIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция prev_permutationстандартной библиотеки C++ . Дополнительные сведения см. в prev_permutation.

push_heap (STL/CLR)

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

Синтаксис

template<class _RanIt> inline
    void push_heap(_RanIt _First, _RanIt _Last);
template<class _RanIt, class _Pr> inline
    void push_heap(_RanIt _First, _RanIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция push_heapстандартной библиотеки C++ . Дополнительные сведения см. в push_heap.

random_shuffle (STL/CLR)

Переупорядочение последовательности N элементов в диапазоне на один из N! возможных порядков, выбранном случайным образом.

Синтаксис

template<class _RanIt> inline
    void random_shuffle(_RanIt _First, _RanIt _Last);
template<class _RanIt, class _Fn1> inline
    void random_shuffle(_RanIt _First, _RanIt _Last, _Fn1% _Func);

Замечания

Эта функция работает так же, как и функция random_shuffleстандартной библиотеки C++ . Дополнительные сведения см. в random_shuffle.

remove (STL/CLR)

Удаляет указанное значение из заданного диапазона без нарушения порядка остальных элементов и возвращает конец нового диапазона после удаления указанного значения.

Синтаксис

template<class _FwdIt, class _Ty> inline
    _FwdIt remove(_FwdIt _First, _FwdIt _Last, const _Ty% _Val);

Замечания

Эта функция работает так же, как и функция removeстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Удалить".

remove_copy (STL/CLR)

Копирует элементы из исходного диапазона в диапазон назначения за исключением того, что элементы с заданным значением не копируются, не нарушая порядок остальных элементов и возвращая конец нового диапазона назначения.

Синтаксис

template<class _InIt, class _OutIt, class _Ty> inline
    _OutIt remove_copy(_InIt _First, _InIt _Last,
        _OutIt _Dest, const _Ty% _Val);

Замечания

Эта функция работает так же, как и функция remove_copyстандартной библиотеки C++ . Дополнительные сведения см. в remove_copy.

remove_copy_if (STL/CLR)

Копирует элементы из исходного диапазона в диапазон назначения за исключением того, что элементы, соответствующие предикату, не копируются, не нарушая порядок остальных элементов и возвращая конец нового диапазона назначения.

Синтаксис

template<class _InIt, class _OutIt, class _Pr> inline
    _OutIt remove_copy_if(_InIt _First, _InIt _Last, _OutIt _Dest,
        _Pr _Pred);

Замечания

Эта функция работает так же, как и функция remove_copy_ifстандартной библиотеки C++ . Дополнительные сведения см. в remove_copy_if.

remove_if (STL/CLR)

Удаляет элементы, соответствующие предикату, из заданного диапазона без нарушения порядка остальных элементов и возвращает конец нового диапазона после удаления указанного значения.

Синтаксис

template<class _FwdIt, class _Pr> inline
    _FwdIt remove_if(_FwdIt _First, _FwdIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция remove_ifстандартной библиотеки C++ . Дополнительные сведения см. в remove_if.

replace (STL/CLR)

Проверяет каждый элемент в диапазоне и заменяет его, если он соответствует заданному значению.

Синтаксис

template<class _FwdIt, class _Ty> inline
    void replace(_FwdIt _First, _FwdIt _Last,
        const _Ty% _Oldval, const _Ty% _Newval);

Замечания

Эта функция работает так же, как и функция replaceстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Замена".

replace_copy (STL/CLR)

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

Синтаксис

template<class _InIt, class _OutIt, class _Ty> inline
    _OutIt replace_copy(_InIt _First, _InIt _Last, _OutIt _Dest,
        const _Ty% _Oldval, const _Ty% _Newval);

Замечания

Эта функция работает так же, как и функция replace_copyстандартной библиотеки C++ . Дополнительные сведения см. в replace_copy.

replace_copy_if (STL/CLR)

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

Синтаксис

template<class _InIt, class _OutIt, class _Pr, class _Ty> inline
    _OutIt replace_copy_if(_InIt _First, _InIt _Last, _OutIt _Dest,
        _Pr _Pred, const _Ty% _Val);

Замечания

Эта функция работает так же, как и функция replace_copy_ifстандартной библиотеки C++ . Дополнительные сведения см. в replace_copy_if.

replace_if (STL/CLR)

Проверяет каждый элемент в диапазоне и заменяет его, если он соответствует заданному предикату.

Синтаксис

template<class _FwdIt, class _Pr, class _Ty> inline
    void replace_if(_FwdIt _First, _FwdIt _Last, _Pr _Pred,
        const _Ty% _Val);

Замечания

Эта функция работает так же, как и функция replace_ifстандартной библиотеки C++ . Дополнительные сведения см. в replace_if.

reverse (STL/CLR)

Изменяет порядок элементов в диапазоне на обратный.

Синтаксис

template<class _BidIt> inline
    void reverse(_BidIt _First, _BidIt _Last);

Замечания

Эта функция работает так же, как и функция reverseстандартной библиотеки C++ . Дополнительные сведения см . в обратном направлении.

reverse_copy (STL/CLR)

Изменяет порядок элементов в исходном диапазоне при копировании их в целевой диапазон.

Синтаксис

template<class _BidIt, class _OutIt> inline
    _OutIt reverse_copy(_BidIt _First, _BidIt _Last, _OutIt _Dest);

Замечания

Эта функция работает так же, как и функция reverse_copyстандартной библиотеки C++ . Дополнительные сведения см. в reverse_copy.

rotate (STL/CLR)

Меняет местами элементы в двух соседних диапазонах.

Синтаксис

template<class _FwdIt> inline
    void rotate(_FwdIt _First, _FwdIt _Mid, _FwdIt _Last);

Замечания

Эта функция работает так же, как и функция rotateстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Поворот".

rotate_copy (STL/CLR)

Меняет местами элементы в двух соседних диапазонах в пределах исходного диапазона и копирует результат в диапазон назначения.

Синтаксис

template<class _FwdIt, class _OutIt> inline
    _OutIt rotate_copy(_FwdIt _First, _FwdIt _Mid, _FwdIt _Last,
        _OutIt _Dest);

Замечания

Эта функция работает так же, как и функция rotate_copyстандартной библиотеки C++ . Дополнительные сведения см. в rotate_copy.

search (STL/CLR)

Выполняет поиск первого вхождения последовательности в целевой диапазон, элементы которого равны указанным в заданной последовательности элементов или элементы которого равноценны в смысле, заданным бинарным предикатом, элементам в заданной последовательности.

Синтаксис

template<class _FwdIt1, class _FwdIt2> inline
    _FwdIt1 search(_FwdIt1 _First1, _FwdIt1 _Last1,
        _FwdIt2 _First2, _FwdIt2 _Last2);
template<class _FwdIt1, class _FwdIt2, class _Pr> inline
    _FwdIt1 search(_FwdIt1 _First1, _FwdIt1 _Last1,
        _FwdIt2 _First2, _FwdIt2 _Last2, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция searchстандартной библиотеки C++ . Дополнительные сведения см. в разделе поиска.

search_n (STL/CLR)

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

Синтаксис

template<class _FwdIt1, class _Diff2, class _Ty> inline
    _FwdIt1 search_n(_FwdIt1 _First1, _FwdIt1 _Last1,
        _Diff2 _Count, const _Ty& _Val);
template<class _FwdIt1, class _Diff2, class _Ty, class _Pr> inline
    _FwdIt1 search_n(_FwdIt1 _First1, _FwdIt1 _Last1,
        _Diff2 _Count, const _Ty& _Val, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция search_nстандартной библиотеки C++ . Дополнительные сведения см. в search_n.

set_difference (STL/CLR)

Объединяет все элементы, принадлежащие одному отсортированному исходному диапазону, но не второму отсортированному исходному диапазону, в один отсортированный диапазон назначения, где критерий упорядочивания может быть указан бинарным предикатом.

Синтаксис

template<class _InIt1, class _InIt2, class _OutIt> inline
    _OutIt set_difference(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2,_OutIt _Dest);
template<class _InIt1, class _InIt2, class _OutIt, class _Pr> inline
    _OutIt set_difference(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция set_differenceстандартной библиотеки C++ . Дополнительные сведения см. в set_difference.

set_intersection (STL/CLR)

Объединяет все элементы, входящие в оба исходных упорядоченных диапазона, в один упорядоченный диапазон назначения, где критерий порядка сортировки может быть указан бинарным предикатом.

Синтаксис

template<class _InIt1, class _InIt2, class _OutIt> inline
    _OutIt set_intersection(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest);
template<class _InIt1, class _InIt2, class _OutIt, class _Pr> inline
    _OutIt set_intersection(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция set_intersectionстандартной библиотеки C++ . Дополнительные сведения см. в set_intersection.

set_symmetric_difference (STL/CLR)

Объединяет все элементы, входящие в один, но не в оба исходных упорядоченных диапазона, в один упорядоченный диапазон назначения, где критерий порядка сортировки может быть указан бинарным предикатом.

Синтаксис

template<class _InIt1, class _InIt2, class _OutIt> inline
    _OutIt set_symmetric_difference(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest);
template<class _InIt1, class _InIt2, class _OutIt, class _Pr> inline
    _OutIt set_symmetric_difference(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция set_symmetric_differenceстандартной библиотеки C++ . Дополнительные сведения см. в set_symmetric_difference.

set_union (STL/CLR)

Объединяет все элементы, входящие в хотя бы один из двух исходных упорядоченных диапазонов, в один упорядоченный диапазон назначения, где критерий порядка сортировки может быть указан бинарным предикатом.

Синтаксис

template<class _InIt1, class _InIt2, class _OutIt> inline
    _OutIt set_union(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest);
template<class _InIt1, class _InIt2, class _OutIt, class _Pr> inline
    _OutIt set_union(_InIt1 _First1, _InIt1 _Last1,
        _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция set_unionстандартной библиотеки C++ . Дополнительные сведения см. в set_union.

sort (STL/CLR)

Упорядочивает элементы в указанном диапазоне в не нисходящем порядке или согласно критерию упорядочивания, заданному бинарным предикатом.

Синтаксис

template<class _RanIt> inline
    void sort(_RanIt _First, _RanIt _Last);
template<class _RanIt, class _Pr> inline
    void sort(_RanIt _First, _RanIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция sortстандартной библиотеки C++ . Дополнительные сведения см. в разделе сортировки.

sort_heap (STL/CLR)

Преобразует кучу в упорядоченный диапазон.

Синтаксис

template<class _RanIt> inline
    void sort_heap(_RanIt _First, _RanIt _Last);
template<class _RanIt, class _Pr> inline
    void sort_heap(_RanIt _First, _RanIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция sort_heapстандартной библиотеки C++ . Дополнительные сведения см. в sort_heap.

stable_partition (STL/CLR)

Разделяет элементы диапазона на два непересекающихся множества, при этом элементы, удовлетворяющие унарному предикату, расположены перед теми, которые ему не удовлетворяют, с сохранением относительного порядка равноценных элементов.

Синтаксис

template<class _BidIt, class _Pr> inline
    _BidIt stable_partition(_BidIt _First, _BidIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция stable_partitionстандартной библиотеки C++ . Дополнительные сведения см. в stable_partition.

stable_sort (STL/CLR)

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

Синтаксис

template<class _BidIt> inline
    void stable_sort(_BidIt _First, _BidIt _Last);
template<class _BidIt, class _Pr> inline
    void stable_sort(_BidIt _First, _BidIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция stable_sortстандартной библиотеки C++ . Дополнительные сведения см. в stable_sort.

swap (STL/CLR)

Меняет местами значения элементов между двумя типами объектов, присваивая содержимое первого объекта второму объекту, а содержимое второго — первому.

Синтаксис

<class _Ty> inline
    void swap(_Ty% _Left, _Ty% _Right);

Замечания

Эта функция работает так же, как и функция swapстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Переключение".

swap_ranges (STL/CLR)

Меняет местами элементы одного диапазона с элементами другого диапазона такого же размера.

Синтаксис

template<class _FwdIt1, class _FwdIt2> inline
    _FwdIt2 swap_ranges(_FwdIt1 _First1, _FwdIt1 _Last1,
        _FwdIt2 _First2);

Замечания

Эта функция работает так же, как и функция swap_rangesстандартной библиотеки C++ . Дополнительные сведения см. в swap_ranges.

transform (STL/CLR)

Применяет заданный объект функции к каждому элементу в исходном диапазоне или к паре элементов из двух исходных диапазонов и копирует возвращаемые значения объекта функции в диапазон назначения.

Синтаксис

template<class _InIt, class _OutIt, class _Fn1> inline
    _OutIt transform(_InIt _First, _InIt _Last, _OutIt _Dest,
        _Fn1 _Func);
template<class _InIt1, class _InIt2, class _OutIt, class _Fn2> inline
    _OutIt transform(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2,
        _OutIt _Dest, _Fn2 _Func);

Замечания

Эта функция работает так же, как и функция transformстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Преобразование".

unique (STL/CLR)

Удаляет повторяющиеся элементы, расположенные в указанном диапазоне рядом друг с другом.

Синтаксис

template<class _FwdIt> inline
    _FwdIt unique(_FwdIt _First, _FwdIt _Last);
template<class _FwdIt, class _Pr> inline
    _FwdIt unique(_FwdIt _First, _FwdIt _Last, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция uniqueстандартной библиотеки C++ . Дополнительные сведения см. в разделе "Уникальные".

unique_copy (STL/CLR)

Копирует элементы из исходного диапазона в диапазон назначения за исключением повторяющихся элементов, расположенных рядом друг с другом.

Синтаксис

template<class _InIt, class _OutIt> inline
    _OutIt unique_copy(_InIt _First, _InIt _Last, _OutIt _Dest);
template<class _InIt, class _OutIt, class _Pr> inline
    _OutIt unique_copy(_InIt _First, _InIt _Last, _OutIt _Dest,
        _Pr _Pred);

Замечания

Эта функция работает так же, как и функция unique_copyстандартной библиотеки C++ . Дополнительные сведения см. в unique_copy.

upper_bound (STL/CLR)

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

Синтаксис

template<class _FwdIt, class _Ty> inline
    _FwdIt upper_bound(_FwdIt _First, _FwdIt _Last, const _Ty% _Val);
template<class _FwdIt, class _Ty, class _Pr> inline
    _FwdIt upper_bound(_FwdIt _First, _FwdIt _Last,
        const _Ty% _Val, _Pr _Pred);

Замечания

Эта функция работает так же, как и функция upper_boundстандартной библиотеки C++ . Дополнительные сведения см. в upper_bound.