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