FastBit sorting functions and other utilities. More...
#include <algorithm>#include "array_t.h"Go to the source code of this file.
Classes | |
| struct | ibis::util::heap< T, C > |
| A simple heap based on std::push_heap and std::pop_heap. More... | |
Namespaces | |
| ibis | |
| The current implementation of FastBit is code named IBIS; most data structures and functions are in the name space ibis. | |
| ibis::util | |
| Organize the miscellaneous functions under the name util. | |
Typedefs | |
| typedef array_t< rid_t > | ibis::RIDSet |
Functions | |
| template<typename T > | |
| size_t | ibis::util::find (const std::vector< T > &, const T &, size_t) |
Find the first position where the value is no less than val. More... | |
| template<typename T > | |
| size_t | ibis::util::find (const array_t< T > &, const T &, size_t) |
Find the first position where the value is no less than val. More... | |
| template<typename T > | |
| uint32_t | ibis::util::find (const array_t< T > &, const array_t< uint32_t > &, const T &, uint32_t) |
Find the position of the first element that is no less than val. More... | |
| template<typename T > | |
| void | ibis::util::reorder (array_t< T > &arr, const array_t< uint32_t > &ind) |
| Reorder the array arr according to the indices given in ind. More... | |
| void | ibis::util::reorder (std::vector< std::string > &arr, const array_t< uint32_t > &ind) |
| Reorder string values. More... | |
| template<typename T > | |
| void | ibis::util::reorder (array_t< T * > &arr, const array_t< uint32_t > &ind) |
| Reorder the array arr according to the indices given in ind. | |
| template<typename T1 , typename T2 > | |
| void | ibis::util::sortAll (array_t< T1 > &arr1, array_t< T2 > &arr2) |
| Sort two arrays together. More... | |
| template<typename T1 , typename T2 > | |
| void | ibis::util::sortKeys (array_t< T1 > &keys, array_t< T2 > &vals) |
| Sorting function with payload. More... | |
| int64_t | ibis::util::sortMerge (std::vector< std::string > &valR, array_t< uint32_t > &indR, std::vector< std::string > &valS, array_t< uint32_t > &indS) |
| An in-memory sort merge join function with string values. | |
| template<typename T > | |
| int64_t | ibis::util::sortMerge (array_t< T > &valR, array_t< uint32_t > &indR, array_t< T > &valS, array_t< uint32_t > &indS) |
| An in-memory sort merge join function. More... | |
| template<typename T > | |
| int64_t | ibis::util::sortMerge (array_t< T > &valR, array_t< uint32_t > &indR, array_t< T > &valS, array_t< uint32_t > &indS, double delta1, double delta2) |
| An in-memory sort merge join function. More... | |
| void | ibis::util::sortStrings (std::vector< std::string > &keys, array_t< uint32_t > &vals) |
| Sorting function with string as keys and uint32_t as payload. More... | |
| void | ibis::util::sortStrings (std::vector< std::string > &keys, array_t< uint32_t > &vals, uint32_t begin, uint32_t end) |
| Quicksort for strings. More... | |
| void | ibis::util::sortStrings (array_t< const char * > &keys, array_t< uint32_t > &vals) |
| Sorting function with string as keys and uint32_t as payload. More... | |
| void | ibis::util::sortStrings (array_t< const char * > &keys, array_t< uint32_t > &vals, uint32_t begin, uint32_t end) |
| Quicksort for strings. More... | |
| void | ibis::util::sortRIDs (ibis::RIDSet &) |
| Sort RID lists. More... | |
| void | ibis::util::sortRIDsq (ibis::RIDSet &, uint32_t, uint32_t) |
| Sort a portion of the RIDSet with quick sort. More... | |
| void | ibis::util::sortRIDsi (ibis::RIDSet &, uint32_t, uint32_t) |
| Sort a portion of the RIDset with insertion sort. More... | |
FastBit sorting functions and other utilities.
This is a collection of sorting function in the name space of ibis::util.
|
| |