Template Function thrust::is_sorted(ForwardIterator, ForwardIterator)

Function Documentation

template<typename ForwardIterator>
bool thrust::is_sorted(ForwardIterator first, ForwardIterator last)

is_sorted returns true if the range [first, last) is sorted in ascending order, and false otherwise.

Specifically, this version of is_sorted returns false if for some iterator i in the range [first, last - 1) the expression *(i + 1) < *i is true.

The following code demonstrates how to use

is_sorted to test whether the contents of a device_vector are stored in ascending order.
Return

true, if the sequence is sorted; false, otherwise.

Parameters
  • first: The beginning of the sequence.

  • last: The end of the sequence.

Template Parameters

#include <thrust/sort.h>
#include <thrust/device_vector.h>
#include <thrust/sort.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(v.begin(), v.end());

// result == false

thrust::sort(v.begin(), v.end());
result = thrust::is_sorted(v.begin(), v.end());

// result == true

See

http://www.sgi.com/tech/stl/is_sorted.html

See

is_sorted_until

See

sort

See

stable_sort

See

less<T>