C-Plus-Plus README

The project's README from github.com/TheAlgorithms/C-Plus-Plus. As one markdown file: README.md.

The Algorithms - C++ # {#mainpage}

Gitpod Ready-to-Code CodeQL CI Gitter chat contributions welcome GitHub repo size Doxygen CI Awesome CI Income Discord chat Donate

Overview

This repository is a collection of open-source implementation of a variety of algorithms implemented in C++ and licensed under MIT License. These algorithms span a variety of topics from computer science, mathematics and statistics, data science, machine learning, engineering, etc.. The implementations and the associated documentation are meant to provide a learning resource for educators and students. Hence, one may find more than one implementation for the same objective but using a different algorithm strategies and optimizations.

Features

Documentation

Online Documentation is generated from the repository source codes directly. The documentation contains all resources including source code snippets, details on execution of the programs, diagrammatic representation of program flow, and links to external resources where necessary. The documentation also introduces interactive source code with links to documentation for C++ STL library functions used. Click on Files menu to see the list of all the files documented with the code.

Documentation of Algorithms in C++ by The Algorithms Contributors is licensed under CC BY-SA 4.0
Creative Commons LicenseCredit must be given to the creatorAdaptations must be shared under the same terms

Contributions

As a community developed and maintained repository, we welcome new un-plagiarized quality contributions. Please read our Contribution Guidelines.

C-Plus-Plus (TheAlgorithms/C-Plus-Plus)

Searching Database…

Что это такое?Это TheAlgorithms/C-Plus-Plus — открытая коллекция реализаций алгоритмов на C++, охватывающая информатику, математику, машинное обучение и физику. Она создана как учебный ресурс, а не для использования в продакшене.
Это библиотека, которую нужно установить, или просто набор исходных файлов?Это не одна библиотека для установки, а репозиторий отдельных самодостаточных исходных файлов на C++. Каждый из них реализует один алгоритм, так что его можно читать, компилировать и использовать отдельно.
Как мне на самом деле использовать один из этих алгоритмов?Просмотрите репозиторий или склонируйте его, выберите нужный файл с алгоритмом и скомпилируйте его напрямую компилятором, поддерживающим C++17. Система сборки или пакет для установки не нужны.
Нужны ли внешние библиотеки, чтобы скомпилировать это?Нет: каждая реализация опирается только на Стандартную библиотеку шаблонов C++ (STL) и не требует сторонних зависимостей.
Этот код предназначен для продакшена?Нет, это прямо заявленный учебный ресурс. Ожидайте несколько конкурирующих реализаций одного и того же алгоритма, построенных на разных подходах, а не одну «эталонную» оптимизированную версию.
Для кого на самом деле предназначена эта коллекция?Она рассчитана на студентов и преподавателей, которым нужны понятные, хорошо документированные эталонные реализации классических алгоритмов, а не готовая к поставке библиотека.
Код действительно работает в разных операционных системах?Да: каждый коммит компилируется и тестируется в Windows, macOS и Ubuntu (Linux) с помощью MSVC, AppleClang и GNU GCC соответственно.
На каких условиях лицензированы код и документация?Исходный код распространяется под лицензией MIT, а автоматически генерируемая документация — под лицензией CC BY-SA 4.0.
Какие темы охватывает проект, помимо классической сортировки и поиска?Помимо стандартных алгоритмов информатики, он включает математику, статистику, анализ данных, машинное обучение и общие инженерные задачи.
Где почитать документацию по конкретному алгоритму?Проект автоматически генерирует онлайн-документацию прямо из исходного кода, включая фрагменты кода, подробности выполнения и диаграммы хода программы.
Будет ли этот код работать на микроконтроллерах вроде ESP32?Весьма вероятно: строгое соответствие стандарту C++17 как раз призвано позволить переносить код на встраиваемые платформы, такие как ESP32 или ARM Cortex, почти без изменений.
Size
140.7 MB
Stars
34.8K
Updated
CommitOct 03
Age
10y
Commits · 90 Days