claw 1.9.0
 
Loading...
Searching...
No Matches
claw::trie< T, Comp > Class Template Reference

This class is a trie tree. More...

#include <trie.hpp>

Public Types

typedef const T value_type
 
typedef Comp value_equal_to
 

Public Member Functions

 trie (const trie< T, Comp > &that)
 
unsigned int size () const
 
bool empty () const
 
void clear ()
 
template<class InputIterator>
void insert (InputIterator first, InputIterator last)
 
template<class InputIterator>
unsigned int count (InputIterator first, InputIterator last)
 

Detailed Description

template<class T, class Comp = std::equal_to<T>>
class claw::trie< T, Comp >

This class is a trie tree.

Trie trees are used for storage and count of linear datas with similar prefixes, typically words. For example, if you insert words

  • ant
  • antagonize
  • antagonism
  • ant It will use as much memory space as
  • antagonize
  • antagonism Nodes for "ant" are shared between words, likewise for "antagoni" for the two last word, and a counter is set for each word. So "ant" will have a count of 2.
    Remarks
    Type requirements :
    • T is EquallyComparable ;
    • Comp is a binary predicate such that Comp(T a,T b) == true if a == b.
    Invariant
    empty <=> (size()==0)
    Author
    Julien Jorge

Definition at line 63 of file trie.hpp.

Member Typedef Documentation

◆ value_equal_to

template<class T, class Comp = std::equal_to<T>>
typedef Comp claw::trie< T, Comp >::value_equal_to

Definition at line 93 of file trie.hpp.

◆ value_type

template<class T, class Comp = std::equal_to<T>>
typedef const T claw::trie< T, Comp >::value_type

Definition at line 92 of file trie.hpp.


The documentation for this class was generated from the following file: