A simple heap and running median (min/max heaps) implementation that can be used on small development boards like Arduino UNO.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
If you want to test the library and the main program locally on your desktion machine, you will need the a C++17 development environment like IntelliJ CLion. More info on C++17 ia available on isocpp.org website
Compile, build, and run the main program (test)
Use the zip file for the Arduino and check out the examples.
- Download Arduino zip file
- Open your Arduino IDE: Sketch->Include Library-> Add .ZIP Library
- Select the file ArduinoRunningMedian.zip
- Open the simple example: File->Examples->ArduinoRunningMedian->simpleMedian
- Upload the sketch on your target and open the serial monitor. You should see something like this:
--------------------------------
Running Median - Test
--------------------------------
Element: 5 Median: 5
Element: 15 Median: 10
Element: 1 Median: 5
...
More infos coming soon...
Compile, build, and run the main program. That's all for now. There will be proper Catch2 tests very soon. For more infos visit catch2 website
Here we will describe the Arduino scenarios in detail.
- toString() is not working properly
- updateElement and getMedian() lead to overflow
- CLion - IntelliJ C and C++ IDE
- Arduino IDE - Arduino IDE
- g++ (Ubuntu 9.2.1-9ubuntu2) 9.2.1 20191008 - Free Software Foundation C++ compiler
We use git 2.20.
- Roland Petrasch - Initial work - ResearchGate
This project is licensed under the GPL3 License - see the LICENSE file for details
- Thanks to the friendly folks from AMDIS Media and IT Services for their support