The document compares the performance of several lossless data compression algorithms for compressing text data. It implements Run Length Encoding, Huffman Encoding (static and adaptive), Shannon Fano, Lempel Zev Welch, and Arithmetic Encoding algorithms. It measures the compression ratio, file sizes, compression/decompression times, entropy, and code efficiency of each algorithm on a set of text files of varying sizes and content. The results show that while Run Length Encoding and Lempel Zev Welch do not perform well for large files, the Huffman algorithms generally provide better compression ratios and processing times compared to the other algorithms tested.