thrust::minmax_element
Defined in thrust/extrema.h
- 
template<typename DerivedPolicy, typename ForwardIterator>
 thrust::pair<ForwardIterator, ForwardIterator> thrust::minmax_element(const thrust::detail::execution_policy_base<DerivedPolicy> &exec, ForwardIterator first, ForwardIterator last)
- minmax_elementfinds the smallest and largest elements in the range- [first, last). It returns a pair of iterators- (imin, imax)where- iminis the same iterator returned by- min_elementand- imaxis the same iterator returned by- max_element. This function is potentially more efficient than separate calls to- min_elementand- max_element.- 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}; thrust::pair<int *, int *> result = thrust::minmax_element(thrust::host, data, data + 6); // result.first is data + 1 // result.second is data + 5 // *result.first is 0 // *result.second is 3 - See also - min_element - See also - max_element - Parameters
- exec – The execution policy to use for parallelization. 
- first – The beginning of the sequence. 
- last – The end of the sequence. 
 
- Template Parameters
- DerivedPolicy – The name of the derived execution policy. 
- ForwardIterator – is a model of Forward Iterator, and - ForwardIterator's- value_typeis a model of LessThan Comparable.
 
- Returns
- A pair of iterator pointing to the smallest and largest elements of the range - [first, last), if it is not an empty range;- last, otherwise.