https://github.com/607011/txtz
Short string compression
https://github.com/607011/txtz
compression compression-algorithm cplusplus cplusplus-17 educational educational-project shannon-fano shannon-fano-algorithm strings text text-mining
Last synced: 9 days ago
JSON representation
Short string compression
- Host: GitHub
- URL: https://github.com/607011/txtz
- Owner: 607011
- License: mit
- Created: 2023-05-18T13:55:07.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-21T19:02:34.000Z (10 months ago)
- Last Synced: 2025-04-12T16:50:29.157Z (2 months ago)
- Topics: compression, compression-algorithm, cplusplus, cplusplus-17, educational, educational-project, shannon-fano, shannon-fano-algorithm, strings, text, text-mining
- Language: C++
- Homepage:
- Size: 219 KB
- Stars: 4
- Watchers: 1
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# txtz
**Short string compression**
THIS IS WORK IN PROGRESS. DO NOT EXPECT ANYTHING USEFUL IN THIS REPO AT THE MOMENT.
## Prerequisites
- C++ compiler (GCC, Clang)
- CMake 3.10 or later## Build
### Linux
Ubuntu
```
sudo apt install g++ libboost-all-dev
``````
git clone https://github.com/607011/txtz.git
cd txtz
git submodule update --init
git submodule update --remote --merge
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .
```### macOS
```
git clone https://github.com/607011/txtz.git
cd txtz
git submodule update --init
git submodule update --remote --merge
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .
```### Windows
In Visual Studio Developer Console:
```
git clone https://github.com/607011/txtz.git
cd txtz
git submodule update --init
git submodule update --remote --merge
md build
cd build
cmake ..
cmake --build . --config Release
```## Remarks
By default, Huffman encoding is used to build the binary tree. You can change that to Shannon-Fano encoding by setting `MAPBUILDING_ALGO` to `shannon-fano` instead `huffman` when calling `cmake` to configure the project:
```
cmake -DMAPBUILDING_ALGO=shannon-fano -DCMAKE_BUILD_TYPE=Release ..
```TODO!!!
## License
See [LICENSE](LICENSE).