Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
NonlinearCompressedBitParallelIndexConstruction.h
Go to the documentation of this file.
1
6#pragma once
7
13
14namespace arbology {
15
16namespace indexing {
17
24public:
30 template < class SymbolType >
32};
33
34template < class SymbolType >
37
38 for ( const common::ranked_symbol < SymbolType > & symbol : w.getAlphabet ( ) )
39 res [ symbol ].resize ( w.getContent ( ).size ( ) );
40
41 for ( unsigned i = 0; i < w.getContent ( ).size ( ); ++i )
42 res [ w.getContent ( ) [ i ] ] [ i ] = true;
43
44 ext::vector < common::ranked_symbol < unsigned > > content = tree::properties::ExactSubtreeRepeatsNaive::repeats ( w ).getContent ( );
45
47 for ( const common::ranked_symbol < unsigned > & symbol : content )
48 repeats.push_back ( symbol.getSymbol ( ) );
49
51}
52
53} /* namespace indexing */
54
55} /* namespace arbology */
56
Definition: NonlinearCompressedBitParallelIndexConstruction.h:23
static indexes::arbology::NonlinearCompressedBitParallelTreeIndex< SymbolType > construct(const tree::PrefixRankedBarTree< SymbolType > &w)
Definition: NonlinearCompressedBitParallelIndexConstruction.h:35
Definition: SparseBoolVector.hpp:27
Definition: ranked_symbol.hpp:20
Class extending the map class from the standard library. Original reason is to allow printing of the ...
Definition: map.hpp:48
Class extending the vector class from the standard library. Original reason is to allow printing of t...
Definition: vector.hpp:45
Compressed bit parallel nonlinear tree index. Stores a bit vector for each symbol of the alphabet....
Definition: NonlinearCompressedBitParallelTreeIndex.h:55
Tree structure represented as linear sequece as result of preorder traversal with additional bar symb...
Definition: PrefixRankedBarTree.h:78
const ext::vector< common::ranked_symbol< SymbolType > > & getContent() const &
Definition: PrefixRankedBarTree.h:273
const ext::set< common::ranked_symbol< SymbolType > > & getAlphabet() const &
Definition: PrefixRankedBarTree.h:129
static ext::vector< int > compute(const tree::PrefixRankedBarTree< SymbolType > &subject)
Definition: SubtreeJumpTable.h:49
Definition: BoyerMooreHorspool.h:22
int i
Definition: AllEpsilonClosure.h:118
return res
Definition: MinimizeByPartitioning.h:145