All Projects → lemire → runningmaxmin

lemire / runningmaxmin

Licence: other
Fast maximum-minimum filters implemented in C++

Programming Languages

C++
36643 projects - #6 most used programming language
Makefile
30231 projects
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to runningmaxmin

HADailySensor
Sensor for Home Assistant that gets reset at midnight
Stars: ✭ 20 (-48.72%)
Mutual labels:  minimum, maximum
okito
Your best flutter coding friend. All in one; state management, navigation management(with dynamic routing), local storage, localization, dependency injection, cool extensions with best usages and with the support of best utilities!
Stars: ✭ 37 (-5.13%)
Mutual labels:  minimum
xmca
Maximum Covariance Analysis in Python
Stars: ✭ 41 (+5.13%)
Mutual labels:  maximum

Fast running maximum-minimum filters implemented in C++.

Build Status

This code implements the algorithms described in the following paper:

Daniel Lemire, Streaming Maximum-Minimum Filter Using No More than Three Comparisons per Element. Nordic Journal of Computing, 13 (4), pages 328-339, 2006.

A preprint is available there:

http://arxiv.org/abs/cs.DS/0610046

Contributors: Daniel Lemire, Kai Wolf

The main algorithm presented in this package is used in Apache Hive.

Usage

To reproduce the numbers from the paper, do the following:

  make
  
  ./unit
  
  ./runningmaxmin --sine 1000000 10000 --windowrange 4 100  --times 1
  
  ./runningmaxmin --white 1000000 --windowrange 4 100  --times 1

Suitability

The new algorithm introduced in the manuscript is most suitable for piecewise monotonic data or when low-latency is required. Otherwise, Gil-Kimmel and van Herk are good choices.

See also

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].