tlx
multisequence_partition.hpp File Reference
#include <algorithm>
#include <cassert>
#include <queue>
#include <utility>
#include <vector>
#include <tlx/container/simple_vector.hpp>
#include <tlx/math/round_to_power_of_two.hpp>

Go to the source code of this file.

Classes

class  lexicographic< T1, T2, Comparator >
 Compare a pair of types lexicographically, ascending. More...
 
class  lexicographic_rev< T1, T2, Comparator >
 Compare a pair of types lexicographically, descending. More...
 

Namespaces

 tlx
 
 tlx::multisequence_partition_detail
 

Functions

template<typename RanSeqs , typename RankType , typename RankIterator , typename Comparator = std::less< typename std::iterator_traits< typename std::iterator_traits<RanSeqs> ::value_type::first_type>::value_type>>
void multisequence_partition (const RanSeqs &begin_seqs, const RanSeqs &end_seqs, const RankType &rank, RankIterator begin_offsets, Comparator comp=Comparator())
 Splits several sorted sequences at a certain global rank, resulting in a splitting point for each sequence. More...