|
Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
|
Huffman coding for data compression. More...
#include <memory>#include <istream>#include <tpl_binNodeUtils.H>#include <tpl_treap.H>#include <tpl_binHeap.H>#include <tpl_dynMapTree.H>#include <bitArray.H>#include <ah-errors.H>Go to the source code of this file.
Classes | |
| struct | Aleph::Huffman_Node |
| class | Aleph::Huffman_Encoder_Engine |
| Huffman encoder. More... | |
| struct | Aleph::Huffman_Encoder_Engine::Get_Key |
| struct | Aleph::Huffman_Encoder_Engine::Load_Key |
| class | Aleph::Huffman_Decoder_Engine |
| Huffman decoder. More... | |
Namespaces | |
| namespace | Aleph |
| Main namespace for Aleph-w library functions. | |
Typedefs | |
| using | Aleph::Symbol_Map = DynMapTree< std::string, Huffman_Node *, Treap_Vtl > |
| using | Aleph::Freq_Node = BinNode< std::pair< std::string, size_t > > |
| typedef BinHeap< size_t > | Aleph::Huffman_Heap |
| typedef DynMapTree< std::string, BitArray, Treap_Vtl > | Aleph::Code_Map |
Functions | |
| static const size_t & | Aleph::get_freq (Huffman_Node *huffman_node) noexcept |
| static void | Aleph::increase_freq (Huffman_Node *huffman_node) noexcept |
| static void | Aleph::set_freq (Huffman_Node *huffman_node, const size_t &freq) noexcept |
| static bool | Aleph::is_leaf (BinNode< std::string > *p) noexcept |
Huffman coding for data compression.
Implements Huffman coding algorithm for building optimal prefix-free codes based on symbol frequencies. Provides encoding and decoding using binary trees.
Definition in file Huffman.H.