thrust::is_sorted
Defined in thrust/sort.h
- 
template<typename DerivedPolicy, typename ForwardIterator>
 bool thrust::is_sorted(const thrust::detail::execution_policy_base<DerivedPolicy> &exec, ForwardIterator first, ForwardIterator last)
- is_sortedreturns- trueif the range- [first, last)is sorted in ascending order, and- falseotherwise.- Specifically, this version of - is_sortedreturns- falseif for some iterator- iin the range- [first, last - 1)the expression- *(i + 1) < *iis- true.- The algorithm’s execution is parallelized as determined by - exec.- The following code demonstrates how to use - is_sortedto test whether the contents of a- device_vectorare stored in ascending order using the- thrust::deviceexecution policy for parallelization:- #include <thrust/sort.h> #include <thrust/device_vector.h> #include <thrust/sort.h> #include <thrust/execution_policy.h> ... thrust::device_vector<int> v(6); v[0] = 1; v[1] = 4; v[2] = 2; v[3] = 8; v[4] = 5; v[5] = 7; bool result = thrust::is_sorted(thrust::device, v.begin(), v.end()); // result == false thrust::sort(v.begin(), v.end()); result = thrust::is_sorted(thrust::device, v.begin(), v.end()); // result == true - See also - is_sorted_until - See also - sort- See also - stable_sort- See also - less<T>- 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, - ForwardIterator's- value_typeis a model of LessThan Comparable, and the ordering on objects of- ForwardIterator's- value_typeis a strict weak ordering, as defined in the LessThan Comparable requirements.
 
- Returns
- true, if the sequence is sorted;- false, otherwise.