xylix / tiralabra-syksy-2021

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Lzhuff

Kerkko Pelttari's algorithm project course work in fall 2021.

Quickstart

Setup: create virtualenv (or don't) and run pip install -r dev-requirements.txt

Command line help: python -m src.main --help

Compress filename with LZW : python -m src.main filename --algorithm lzw --write-to-file Compress filename with Huffman coding: python -m src.main filename --algorithm huffman --write-to-file

Extract filename (that has either .lzw or .huffman extension, algorithm is autodetectd) : python -m src.main filename --write-to-file

Development

Run tests: make test Run performance tests: make test-with-benchmarks Run simple benchmarks: make simple-benchmarks

Profiling

Run with python -m cProfile -o profile.out -s cumtime -m src.main to profile

Course documents

About


Languages

Language:Python 87.9%Language:Shell 9.5%Language:Makefile 2.6%