标签: algorithm language-agnostic runtime
运行长度编码可以做的最好的事情是什么。
This page表明时间复杂度为O(m * n),其中m是数字重复的时间。
进行RLE是一种更有效的算法吗?
答案 0 :(得分:3)
我想你可能会误解运行时。维基百科页面上的算法是O(n)(其中n是输入的长度)。注意两个循环的索引是如何相同的,并且增加。
答案 1 :(得分:0)
如前所述,时间复杂度为O(n)。更高效的算法使用SIMD或CUDA一次处理多个元素。
您可能会看到有效且快速的实施:TurboRLE:Run Length Encoding包括SIMD。还提供了一个基准程序。