LZ78 is a general data compression algorithm. It works by constructing a dictionary of data sequences that can be reused.