lexicographical_compare¶
Header File: Kokkos_StdAlgorithms.hpp
namespace Kokkos{
namespace Experimental{
template <class ExecutionSpace, class IteratorType1, class IteratorType2>
bool lexicographical_compare(const ExecutionSpace& exespace, IteratorType1 first1,
IteratorType1 last1, IteratorType2 first2, (1)
IteratorType2 last2);
template <class ExecutionSpace, class IteratorType1, class IteratorType2>
bool lexicographical_compare(const std::string& label, const ExecutionSpace& exespace,
IteratorType1 first1, IteratorType1 last1, (2)
IteratorType2 first2, IteratorType2 last2);
template <class ExecutionSpace, class DataType1, class... Properties1,
class DataType2, class... Properties2>
bool lexicographical_compare(
const ExecutionSpace& exespace,
const ::Kokkos::View<DataType1, Properties1...>& view1, (3)
::Kokkos::View<DataType2, Properties2...>& view2);
template <class ExecutionSpace, class DataType1, class... Properties1,
class DataType2, class... Properties2>
bool lexicographical_compare(
const std::string& label, const ExecutionSpace& exespace,
const ::Kokkos::View<DataType1, Properties1...>& view1, (4)
::Kokkos::View<DataType2, Properties2...>& view2);
template <class ExecutionSpace, class IteratorType1, class IteratorType2,
class ComparatorType>
bool lexicographical_compare(const ExecutionSpace& exespace, IteratorType1 first1,
IteratorType1 last1, IteratorType2 first2, (5)
IteratorType2 last2, ComparatorType comp);
template <class ExecutionSpace, class IteratorType1, class IteratorType2,
class ComparatorType>
bool lexicographical_compare(const std::string& label, const ExecutionSpace& exespace,
IteratorType1 first1, IteratorType1 last1, (6)
IteratorType2 first2, IteratorType2 last2,
ComparatorType comp);
template <class ExecutionSpace, class DataType1, class... Properties1,
class DataType2, class... Properties2, class ComparatorType>
bool lexicographical_compare(
const ExecutionSpace& exespace,
const ::Kokkos::View<DataType1, Properties1...>& view1,
::Kokkos::View<DataType2, Properties2...>& view2, ComparatorType comp); (7)
template <class ExecutionSpace, class DataType1, class... Properties1,
class DataType2, class... Properties2, class ComparatorType>
bool lexicographical_compare(
const std::string& label, const ExecutionSpace& exespace,
const ::Kokkos::View<DataType1, Properties1...>& view1, (8)
::Kokkos::View<DataType2, Properties2...>& view2, ComparatorType comp);
} //end namespace Experimental
} //end namespace Kokkos
Description¶
Returns true for (1,2,5,6) if the first range [first1, last1) is lexicographically less than the second range [first2, last2).
Returns true for (3,4,7,8) if elements in view1 are lexicographically less than elements in view2.
Elements (1,2,3,4) are compared using the < operator.
Elements (5,6,7,8) are compared using comp.
Parameters and Requirements¶
exespace:execution space instance
label:1,5: The default string is “Kokkos::lexicographical_compare_iterator_api_default”.
3,7: The default string is “Kokkos::lexicographical_compare_view_api_default”.
first1,last1,first2,last2:range of elements to compare
must be random access iterators
must represent valid ranges, i.e.,
last1 >= first1andlast2 >= first2must be accessible from
exespace
view1,view2:views to compare
must be rank-1, and have
LayoutLeft,LayoutRight, orLayoutStridemust be accessible from
exespace
pred- similar toequal