Browse free open source C++ Algorithms and projects below. Use the toggles on the left to filter open source C++ Algorithms by OS, license, language, programming language, and project status.

  • Build Agents and Models on One Platform Icon
    Build Agents and Models on One Platform

    Everything you need to build production-ready agents and models. Access 200+ Google and third-party AI models and tools.

    Gemini Enterprise Agent Platform is Google Cloud's comprehensive platform for developers to build, scale, govern, and optimize agents and models. Choose from Google's most advanced models and third-party models like Anthropic's Claude Model Family.
    Start Free
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 1
    Clipper

    Clipper

    Polygon and line clipping and offsetting library (C++, C#, Delphi)

    This library is now obsolete and no longer being maintained. It has been superceded by my Clipper2 library - https://github.com/AngusJohnson/Clipper2.
    Leader badge
    Downloads: 5,881 This Week
    Last Update:
    See Project
  • 2
    Technical analysis library with indicators like ADX, MACD, RSI, Stochastic and TRIX, plus candlestick pattern recognition. Docs: https://ta-lib.org Available natively in C/C++, Java, Rust and C# with wrappers for python, R and many other ecosystems. MOVED TO GITHUB: https://github.com/TA-Lib/ta-lib . No further support is provided on SourceForge. Release 0.4.0 is very outdated, please check github for the most recent release.
    Leader badge
    Downloads: 5,383 This Week
    Last Update:
    See Project
  • 3
    GNSS-SDR

    GNSS-SDR

    An open source software-defined GNSS receiver

    An open source software-defined Global Navigation Satellite Systems (GNSS) receiver written in C++ and based on the GNU Radio framework.
    Leader badge
    Downloads: 2,138 This Week
    Last Update:
    See Project
  • 4
    Armadillo

    Armadillo

    fast C++ library for linear algebra & scientific computing

    * Fast C++ library for linear algebra (matrix maths) and scientific computing * Easy to use functions and syntax, deliberately similar to Matlab / Octave * Uses template meta-programming techniques to increase efficiency * Provides user-friendly wrappers for OpenBLAS, Intel MKL, LAPACK, ATLAS, ARPACK, SuperLU and FFTW libraries * Useful for machine learning, pattern recognition, signal processing, bioinformatics, statistics, finance, etc. * Downloads: https://arma.sourceforge.net/download.html * Documentation: https://arma.sourceforge.net/docs.html * Bug reports: https://arma.sourceforge.net/faq.html * Git repo: https://gitlab.com/armadillo-lib/armadillo-code
    Leader badge
    Downloads: 3,933 This Week
    Last Update:
    See Project
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 5
    Kalibr Allan

    Kalibr Allan

    IMU Allan standard deviation charts

    kalibr_allan is a utility repository that provides scripts and tools for calculating IMU noise parameters for use in Kalibr and other IMU filtering systems. While manufacturers typically provide β€œwhite noise” values in IMU datasheets, the bias instability and random walk parameters must be determined experimentally. This project enables users to compute those values using Allan variance analysis from recorded IMU data. The workflow involves recording IMU measurements with the device stationary, converting ROS bag files into MATLAB-compatible formats, and then running MATLAB scripts to generate Allan deviation plots. These plots are analyzed to determine noise density and random walk parameters for both gyroscopes and accelerometers. The repository also includes example data and plots from real sensors such as the XSENS MTI-G-700, Tango Yellowstone Tablet, and ASL-ETH VI-Sensor, providing reference points for interpretation.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 6
    OpenSpiel

    OpenSpiel

    Environments and algorithms for research in general reinforcement

    OpenSpiel is a collection of environments and algorithms for research in general reinforcement learning and search/planning in games. OpenSpiel supports n-player (single- and multi- agent) zero-sum, cooperative and general-sum, one-shot and sequential, strictly turn-taking and simultaneous-move, perfect and imperfect information games, as well as traditional multiagent environments such as (partially- and fully- observable) grid worlds and social dilemmas. OpenSpiel also includes tools to analyze learning dynamics and other common evaluation metrics. Games are represented as procedural extensive-form games, with some natural extensions. The core API and games are implemented in C++ and exposed to Python. Algorithms and tools are written both in C++ and Python. To try OpenSpiel in Google Colaboratory, please refer to open_spiel/colabs subdirectory.
    Downloads: 16 This Week
    Last Update:
    See Project
  • 7
    dlib C++ Library
    Dlib is a C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems.
    Leader badge
    Downloads: 50 This Week
    Last Update:
    See Project
  • 8
    threadpool is a cross-platform C++ thread pool library. It provides a convenient way for dispatching asynchronous tasks and can be easily customized. threadpool is based on the high-quality Boost source libraries.
    Leader badge
    Downloads: 49 This Week
    Last Update:
    See Project
  • 9
    KACTL

    KACTL

    KTH algorithm competition template library

    KACTL (the KTH Algorithmic Contest Template Library) is an extensively curated and high-performance C++ algorithms library created by the competitive programming team at the Royal Institute of Technology (KTH) to serve as a trusted, battle-tested codebase for algorithmic contests, programming competitions, and general algorithm development. The repository aggregates dozens of concise implementations of essential data structures, numerical methods, graph algorithms, string processing tools, computational geometry routines, and optimization techniques, all designed with speed, correctness, and compactness in mind. Instead of reinventing algorithms on the fly during contests like ACM-ICPC or Codeforces rounds, competitors can import exactly the component they need β€” whether a segment tree with lazy propagation, a minimum cost flow solver, or a fast Fourier transform β€” and focus their energy on problem logic and strategy.
    Downloads: 7 This Week
    Last Update:
    See Project
  • Paessler: Easy to Use With Enterprise Power. Free Trial Icon
    Paessler: Easy to Use With Enterprise Power. Free Trial

    A low-code dashboard makes monitoring intuitive for any admin, while scripting and custom sensors give experts full control.

    You shouldn't have to choose between a monitoring tool that's easy to use and one that's powerful enough for a complex environment. PRTG's low-code interface lets any admin build dashboards, set alerts and monitor devices without scripting, while custom sensors and full API access are there when your team needs deeper control. One platform, no compromise. Download a free 30-day trial now.
    Get Free Download
  • 10
    FileVerifier++
    FileVerifier++ is a Windows utility for calculating hashes using a number of algorithms including CRC32, MD5, SHA-1, SHA-256/224/384/512, WHIRLPOOL, and RIPEMD-128/160/256/320. Supported hash file formats include MD5SUM .MD5, SFV, BSD CKSUM, and others.
    Downloads: 55 This Week
    Last Update:
    See Project
  • 11
    WOFF2

    WOFF2

    This document documents how to run the compression reference code

    woff2 is Google’s reference implementation of the WOFF2 webfont format, the modern, highly compressed container used by browsers to ship OpenType/TrueType fonts efficiently over the network. It integrates specialized transforms for font tables (like glyf/loca and variations data) with Brotli compression to squeeze out as many bytes as possible while preserving exact font fidelity on decode. The repository includes a compact C/C++ library and small command-line tools so you can convert existing TTF/OTF files to WOFF2 and back for testing or build pipelines. Its encoder applies deterministic, spec-compliant transformations that maximize compressibility without altering rendering results, making it safe for production web delivery. The decoder is just as strict, validating headers and table checksums to guard against malformed inputs. Because WOFF2 is now ubiquitous across browsers and CDNs, this repo often serves as the canonical baseline for tooling.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 12
    Linear Program Solver

    Linear Program Solver

    Solve linear programming problems

    Linear Program Solver (LiPS) is an optimization package oriented on solving linear, integer and goal programming problems. The main features of LiPS are: ● LiPS is based on the efficient implementation of the modified simplex method that solves large scale problems. ● LiPS provides not just an answer, but a detailed solution process as a sequence of simplex tables, so you can use it for studying/teaching linear programming. ● LiPS gives sensitivity analysis procedures, which allow us to study the behaviour of the model when you change its parameters, including: analysis of changes in the right sides of constraints, analysis of changes in the coefficients of the objective function, analysis of changes in the column/row of the technology matrix. Such information may be extremely useful for the practical application of LP Models. ● LiPS provides methods of goal programming, including lexicographic and weighted GP methods, which are oriented on multi-objective optimisation.
    Downloads: 26 This Week
    Last Update:
    See Project
  • 13

    Jojos Binary Diff

    Binary Diff and Undiff Utility

    JDIFF is a program that outputs the differences between two binary files, either in binary format or in human readable format (detailed or summarized) and then allows to reconstruct the second file from the first one and the diff-file.
    Leader badge
    Downloads: 24 This Week
    Last Update:
    See Project
  • 14

    OpenANN

    Basic Artificial Neural Network

    OpenANN is a basic artificial neural network toolset. It is not being actively maintained. For performance neural networking, consider an alternative (such as https://sourceforge.net/projects/openann-project or https://www.tensorflow.org)
    Downloads: 84 This Week
    Last Update:
    See Project
  • 15
    PHPXref is a developers tool, written in Perl, that will cross reference and extract inline documentation from a collection of PHP scripts. It generates simple HTML output suitable for browsing offline.
    Downloads: 29 This Week
    Last Update:
    See Project
  • 16
    EASTL

    EASTL

    EASTL, Electronic Arts Standard Template Library

    EASTL stands for Electronic Arts Standard Template Library. It is a C++ template library of containers, algorithms, and iterators useful for runtime and tool development across multiple platforms. It is a fairly extensive and robust implementation of such a library and has an emphasis on high performance above all other considerations. If you are familiar with the C++ STL or have worked with other templated container/algorithm libraries, you probably don't need to read this. If you have no familiarity with C++ templates at all, then you probably will need more than this document to get you up to speed. In this case, you need to understand that templates, when used properly, are powerful vehicles for the ease of creation of optimized C++ code. A description of C++ templates is outside the scope of this documentation, but there is plenty of such documentation on the Internet.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 17
    psimpl - generic n-dimensional polyline simplification. psimpl is a lightweight C++ library that is generic, easy to use, and supports multiple simplification algorithms, including Douglas-Peucker.
    Downloads: 50 This Week
    Last Update:
    See Project
  • 18
    Simd

    Simd

    High performance image processing library in C++

    The Simd Library is a free open source image processing library, designed for C and C++ programmers. It provides many useful high performance algorithms for image processing such as: pixel format conversion, image scaling and filtration, extraction of statistic information from images, motion detection, object detection (HAAR and LBP classifier cascades) and classification, neural network. The algorithms are optimized with using of different SIMD CPU extensions. In particular the library supports following CPU extensions: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX-512 for x86/x64, VMX(Altivec) and VSX(Power7) for PowerPC, NEON for ARM. The Simd Library has C API and also contains useful C++ classes and functions to facilitate access to C API. The library supports dynamic and static linking, 32-bit and 64-bit Windows, Android and Linux, MSVS, G++ and Clang compilers, MSVS project and CMake build systems.
    Leader badge
    Downloads: 11 This Week
    Last Update:
    See Project
  • 19
    libPGF

    libPGF

    libPGF is an implementation of the Progressive Graphics File (PGF)

    The Progressive Graphics File (PGF) is an efficient image file format, that is based on a fast, discrete wavelet transform with progressive coding features. PGF can be used for lossless and lossy compression. It's most suitable for natural images. PGF can be used as a very efficient and fast replacement of JPEG 2000.
    Leader badge
    Downloads: 20 This Week
    Last Update:
    See Project
  • 20
    TTMath - a bignum library for C++
    A bignum library written in the C++ programming language as templates. It provides standard mathematical operations like add, sub, mul, div, pow etc. with the big integer and big floating point numbers.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 21
    C++ Revenue Management Open Library
    That project (RMOL) aims at giving developers concerned by the Revenue Management arena a library delivering a reference implementation for most of the published algorithms and methods. That library is intended to be used in simulated environment: it does not intend to be used in real world production systems.
    Downloads: 34 This Week
    Last Update:
    See Project
  • 22
    Arduino FOC

    Arduino FOC

    Arduino FOC for BLDC and Stepper motors

    We live in very exciting times πŸ˜ƒ! BLDC motors are entering the hobby community more and more and many great projects have already emerged leveraging their far superior dynamics and power capabilities. BLDC motors have numerous advantages over regular DC motors but they have one big disadvantage, the complexity of control. Even though it has become relatively easy to design and manufacture PCBs and create our own hardware solutions for driving BLDC motors the proper low-cost solutions are yet to come. One of the reasons for this is the apparent complexity of writing the BLDC driving algorithms, Field oriented control (FOC) being an example of one of the most efficient ones. The solutions that can be found online are almost exclusively very specific for certain hardware configurations and the microcontroller architecture used. Additionally, most of the efforts at this moment are still channeled towards the high-power applications of the BLDC motors and proper low-cost FOC.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    TSP Solver and Generator

    TSP Solver and Generator

    Generate and solve Travelling Salesman Problem tasks

    TSPSG is intended to generate and solve Travelling Salesman Problem (TSP) tasks. It uses Branch and Bound method for solving. An input is a number of cities and a matrix of city-to-city travel prices. The matrix can be populated with random values in a given range (useful for generating tasks). The result is an optimal route, its price, step-by-step matrices of solving and solving graph. The task can be saved in internal binary format and opened later. The result can be printed or saved as PDF, HTML, or ODF. TSPSG may be useful for teachers to generate test tasks or just for regular users to solve TSPs. Also, it may be used as an example of using Branch and Bound method to solve a particular task.
    Downloads: 26 This Week
    Last Update:
    See Project
  • 24
    STXXL is an implementation of the C++ standard template library STL for external memory (out-of-core) computations, containers, and algorithms that can process huge volumes of data that only fit on disks.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 25

    ViennaCL

    Linear algebra and solver library using CUDA, OpenCL, and OpenMP

    ViennaCL provides high level C++ interfaces for linear algebra routines on CPUs and GPUs using CUDA, OpenCL, and OpenMP. The focus is on generic implementations of iterative solvers often used for large linear systems and simple integration into existing projects.
    Leader badge
    Downloads: 12 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next