thrust::min_element
Defined in thrust/extrema.h
-
template<typename DerivedPolicy, typename ForwardIterator>
ForwardIterator thrust::min_element(const thrust::detail::execution_policy_base<DerivedPolicy> &exec, ForwardIterator first, ForwardIterator last) min_elementfinds the smallest element in the range[first, last). It returns the first iteratoriin[first, last)such that no other iterator in[first, last)points to a value smaller than*i. The return value islastif and only if[first, last)is an empty range.The two versions of
min_elementdiffer in how they define whether one element is less than another. This version compares objects usingoperator<. Specifically, this version ofmin_elementreturns the first iteratoriin[first, last)such that, for every iteratorjin[first, last),*j < *iisfalse.The algorithm’s execution is parallelized as determined by
exec.#include <thrust/extrema.h> #include <thrust/execution_policy.h> ... int data[6] = {1, 0, 2, 2, 1, 3}; int *result = thrust::min_element(thrust::host, data, data + 6); // result is data + 1 // *result is 0
- Parameters
exec – The execution policy to use for parallelization.
first – The beginning of the sequence.
last – The end of the sequence.
- Template Parameters
ForwardIterator – is a model of Forward Iterator, and
ForwardIterator'svalue_typeis a model of LessThan Comparable.- Returns
An iterator pointing to the smallest element of the range
[first, last), if it is not an empty range;last, otherwise.