C README

The project's README from github.com/TheAlgorithms/C. 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

The repository is a collection of open-source implementations of a variety of algorithms implemented in C and licensed under GPLv3 License. The algorithms span a variety of topics from computer science, mathematics and statistics, data science, machine learning, engineering, etc.. The implementations and their associated documentations 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 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. 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 (TheAlgorithms/C)

Searching Database…

22.5K ·GitHub
Что это такое?Поддерживаемая сообществом open-source подборка реализаций алгоритмов на C: она охватывает информатику, математику, статистику, data science, машинное обучение и инженерные задачи.
Это библиотека, которую я подключаю к своему проекту, или набор программ, которые можно читать и запускать?Набор самостоятельных файлов с исходным кодом: каждый из них атомарен, требует только стандартную библиотеку C и компилируется сам по себе — то есть вы изучаете и собираете отдельные алгоритмы, а не устанавливаете пакет.
Как собрать и запустить алгоритм из этой подборки?Склонируйте репозиторий и скомпилируйте любой заинтересовавший вас файл компилятором с поддержкой C11; CI проверяет компиляцию каждого коммита, так что примеры гарантированно собираются без ошибок.
Этот код готов для продакшена или это скорее учебный материал?Относитесь к нему как к учебному ресурсу, а не к оптимизированной библиотеке: для одной и той же задачи здесь может быть несколько реализаций с разными стратегиями алгоритмов и оптимизациями.
Он рассчитан на новичков, которые изучают алгоритмы, или на опытных C-разработчиков?В первую очередь на преподавателей и студентов — исходный код специально хорошо документирован и снабжён подробными пояснениями, чтобы можно было глубоко разобраться в основах каждого алгоритма.
Он запустится на моей машине или только на Linux?CI компилирует и тестирует каждый коммит на macOS (AppleClang 14.0.0) и Ubuntu (GCC 11.3.0), а строгое следование стандарту C11 позволяет почти без изменений собирать тот же код для встраиваемых систем вроде ESP32 и ARM Cortex.
Могу ли я взять этот код и использовать в своём проекте?Да — модульные реализации под GPLv3 прямо задуманы для удобного использования в других приложениях, однако обязательства copyleft GPLv3 распространяются и на то, что вы на их основе построите.
Как понять, что реализация действительно работает?В каждой программе есть встроенные самопроверки, поэтому компиляция и запуск файла сразу подтверждают, что реализация ведёт себя так, как описано.
What are similar projects?C-Plus-Plus, JavaScript, Go, interviews, Java, cosmos, interview, Python
Size
19.9 MB
Stars
22.5K
Updated
CommitSep 27
Age
10y
Commits · 90 Days