From Run Length Encoding to LZ78 and Back Again
Yuya Tamakoshi, I Tomohiro, Shunsuke Inenaga, Hideo Bannai, Masayuki Takeda · 2013
In this paper, we present efficient algorithms for interconversion between Lempel-Ziv 78 (LZ78) encoding and run length encoding (RLE). We show how, given an RLE of size n for a string S, we can compute the corresponding LZ78 encoding of size m for S in O((n + m) log σ) time, where σ is the number of distinct characters appearing in S. We also show how, given an LZ78 encoding of size m for a string S, we can compute the corresponding RLE of size n in O(n + m) time. Both algorithms use O(m) extra working space.