/ / Kodowanie długości przebiegu - algorytm, język-agnostyk, środowisko wykonawcze

Kodowanie długości przebiegu - algorytm, język-agnostyk, środowisko wykonawcze

Co jest najlepsze, co możemy zrobić z kodowaniem długości run.

Ta strona sugeruje, że złożoność czasu wynosi O (m * n), gdzie m to liczba czasu, w którym liczba się powtarza.

Czy skuteczniejszym algorytmem jest RLE?

Odpowiedzi:

2 dla odpowiedzi № 1

Myślę, że być może źle zrozumiałeś środowisko wykonawcze. Algorytm na stronie wikipedii to O (n) (gdzie n to długość danych wejściowych). Zwróć uwagę, że indeks jest taki sam dla obu pętli i rośnie.


0 dla odpowiedzi nr 2

Jak już wspomniano, złożoność czasu wynosi O (n). Bardziej wydajne algorytmy wykorzystują SIMD lub CUDA do przetwarzania więcej niż jednego elementu naraz.

Możesz rzucić okiem na sprawne i szybkie wdrożenie: TurboRLE: kodowanie długości przebiegu w tym SIMD. Dostarczony jest również program testów porównawczych.