Function vector_largest (o2scl)¶
-
template<class vec_t, class data_t>
void o2scl::vector_largest(size_t n, vec_t &data, size_t k, vec_t &largest)¶ Find the k largest entries of the first
nelements of a vector.Given a vector
dataof sizenthis sets the firstkentries of the vectorlargestto the k largest entries from vectordatain descending order. The vectorlargestmust be allocated beforehand to hold at leastkelements.This works similarly to the GSL function
gsl_sort_largest().If
kis zero, then this function does nothing and returns o2scl::success .Note
This \( {\cal O}(k N) \) algorithm is useful only when \( k << N \).
-
template<class vec_t, class data_t>
void o2scl::vector_largest(vec_t &data, size_t k, vec_t &largest)¶ Find the k largest entries of a vector of a vector.
Given a vector
data, this function sets the firstkentries of the vectorlargestto the k largest entries from vectordatain ascending order. The vectorlargestis resized if necessary to hold at leastkelements.This works similarly to the GSL function
gsl_sort_largest().If
kis zero, then this function does nothing and returns o2scl::success .Note
This \( {\cal O}(k N) \) algorithm is useful only when \( k << N \).