thrust::unique_count
Defined in thrust/unique.h
-
template<typename ForwardIterator, typename BinaryPredicate>
thrust::iterator_traits<ForwardIterator>::difference_type thrust::unique_count(ForwardIterator first, ForwardIterator last, BinaryPredicate binary_pred) unique_count
counts runs of equal elements in the range[first, last)
with the same value,This version of
unique_count
uses the function objectbinary_pred
to test for equality.The following code snippet demonstrates how to use
unique_count
to determine the number of runs of equal elements:#include <thrust/unique.h> #include <thrust/execution_policy.h> ... const int N = 7; int A[N] = {1, 3, 3, 3, 2, 2, 1}; int count = thrust::unique_count(A, A + N, thrust::equal_to<int>()); // count is now 4
See also
unique_copy
See also
unique_by_key_copy
See also
reduce_by_key_copy
- Parameters
first – The beginning of the input range.
last – The end of the input range.
binary_pred – The binary predicate used to determine equality.
- Template Parameters
ForwardIterator – is a model of Forward Iterator, and
ForwardIterator's
value_type
is convertible toBinaryPredicate's
first_argument_type
and toBinaryPredicate's
second_argument_type
.BinaryPredicate – is a model of Binary Predicate.
- Returns
The number of runs of equal elements in
[first, new_last)