运行长度编码

时间:2010-03-19 16:49:01

标签: algorithm language-agnostic runtime

运行长度编码可以做的最好的事情是什么。

This page表明时间复杂度为O(m * n),其中m是数字重复的时间。

进行RLE是一种更有效的算法吗?

2 个答案:

答案 0 :(得分:3)

我想你可能会误解运行时。维基百科页面上的算法是O(n)(其中n是输入的长度)。注意两个循环的索引是如何相同的,并且增加。

答案 1 :(得分:0)

如前所述,时间复杂度为O(n)。更高效的算法使用SIMD或CUDA一次处理多个元素。

您可能会看到有效且快速的实施:TurboRLE:Run Length Encoding包括SIMD。还提供了一个基准程序。