TheAlgorithms/C-Plus-Plus
GitHub: TheAlgorithms/C-Plus-Plus
一个涵盖数学、机器学习、计算机科学和物理等领域算法的 C++ 教育资源库,严格遵循 C++17 标准。
Stars: 34005 | Forks: 7750
# The Algorithms - C++ # {#mainpage}
[](https://gitpod.io/#https://github.com/TheAlgorithms/C-Plus-Plus)
[](https://github.com/TheAlgorithms/C-Plus-Plus/actions/workflows/codeql.yml)
[](https://gitter.im/TheAlgorithms)
[](https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/CONTRIBUTING.md)

[](https://TheAlgorithms.github.io/C-Plus-Plus)
[](https://github.com/TheAlgorithms/C-Plus-Plus/actions?query=workflow%3A%22Awesome+CI+Workflow%22)
[](https://liberapay.com/TheAlgorithms)
[](https://the-algorithms.com/discord/)
[](https://liberapay.com/TheAlgorithms/donate)
## 概述
本仓库包含了使用 C++ 实现的各种算法的开源实现集合,并根据 [MIT License](https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/LICENSE) 获得许可。这些算法涵盖了计算机科学、数学与统计学、数据科学、机器学习、工程学等多个领域的主题。这些实现及相关文档旨在为教育工作者和学生提供学习资源。因此,对于同一目标,可能会发现多种实现,但它们使用了不同的算法策略和优化方法。
## 功能特性
- 本仓库提供了各种算法在最基础、最通用的语言之一 —— [C++](https://en.wikipedia.org/wiki/C%2B%2B) 中的实现。
- 文档齐全的源代码配有详细的解释,为教育工作者和学生提供了宝贵的资源。
- 每个源代码都是原子性的,使用 [STL classes](https://en.wikipedia.org/wiki/Standard_Template_Library),编译和运行_无需外部库_。因此,可以更深入地研究算法的基础原理。
- 每次提交的源代码都会在三个主要操作系统(即 Windows、MacOS 和 Ubuntu (Linux))的最新版本上使用 MSVC 19 2022、AppleClang 15.0.15 和 GNU 13.3.0 分别进行 [编译和测试](https://github.com/TheAlgorithms/C-Plus-Plus/actions?query=workflow%3A%22Awesome+CI+Workflow%22)。
- 严格遵守 [C++17](https://en.wikipedia.org/wiki/C%2B%2B17) 标准,确保代码具有可移植性,例如在 [ESP32](https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-guides/cplusplus.html#c-language-standard)、[ARM Cortex](https://developer.arm.com/documentation/101458/2404/Standards-support/Supported-C-C---standards-in-Arm-C-C---Compiler) 等嵌入式系统上只需很少甚至无需修改即可运行。
- 程序内部的自检机制确保了实现的正确性和可靠性。
- 模块化的实现和开源许可使得这些函数可以方便地应用于其他应用程序中。
## 文档
[在线文档](https://TheAlgorithms.github.io/C-Plus-Plus) 直接由仓库源代码生成。文档包含所有资源,包括源代码片段、程序执行详情、程序流程的图示表示,以及必要时指向外部资源的链接。文档还引入了交互式源代码,并链接到所用 C++ STL 库函数的文档。
点击 [Files menu](https://TheAlgorithms.github.io/C-Plus-Plus/files.html) 查看所有已记录代码的文件列表。
[Documentation of Algorithms in C++](https://thealgorithms.github.io/C-Plus-Plus) 由 [The Algorithms Contributors](https://github.com/TheAlgorithms/C-Plus-Plus/graphs/contributors) 编写, licensed under [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1)


## 贡献
作为一个由社区开发和维护的仓库,我们欢迎新的、非剽窃的高质量贡献。请阅读我们的 [贡献指南](https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/CONTRIBUTING.md)。
标签:Apex, C++, DNS解析, MIT许可, 代码示例, 开源, 开源项目, 数学, 数据分析, 数据擦除, 数据结构, 机器学习, 物理, 算法, 编程库, 计算机科学