常用的AI人工智能算法库

1. Libnabo

 libnabo 是一个快速为低维度空间提供K最近邻居算法库。它提供了一个干净的,传统的无标量类型无关的C ++模板API。

示例代码:
#include "nabo/nabo.h"
using namespace Nabo;
using namespace Eigen;
...
NNSearchF* nns = NNSearchF::createKDTreeLinearHeap(M);

const int K = 5;
VectorXi indices(K);
VectorXf dists2(K);

nns->knn(q, indices, dists2, K);

https://github.com/ethz-asl/libnabo

2. 数据结构算法库 DSAL

Data Structure & Algorithm Library (DSAL) 是一个经典的数据结构和算法库。

主要特性:

no exception, and ability to work without exception
exception safety
template interface
flexible choice
programming by contract
no library to link
STL similar
support multi-compiler, support multi-platform

http://sourceforge.net/projects/dsal/

3. 数论库 FLINT

FLINT 是一个数论库,用C语言编写,它包括一个非常快的多项式算法库。

http://www.flintlib.org/

4. 中文分词软件包 LibMMSeg

http://www.oschina.net/p/libmmseg

http://www.coreseek.cn/opensource/mmseg/

5. C++并发数据结构算法库 CDS

CDS是一个 C++ 模板库,包含 lock-free and fine-grained 算法。

包含一系列并发数据结构的实现:

顺序支持的原子操作
SMR算法
数据结构:

队列: Michael & Scott lock-free 和 read/write lock-based, Moir et al algo, Ladan-Mozes & Shavit optimistic queue, bounded (ring-buffered) algos
有序列表: Michael's algo, Lazy list algo
图: Michael hash-map, Split-ordere list by Ori Shalev & Nir Shavit
同步-lock with different back-off technique
new in 0.8.0 Michael's memory allocator. 参见 cds::memory::michael::Heap 
CDS大部分是 header-only,少数算法和数据结构在DLL(SO)库中,详情参见文档。

http://libcds.sourceforge.net/

6. C++的哈希算法库 hashlib++

hashlib++ 是一个简单易用的用来生成 checksum 算法,或者成为 “哈希” 的 C++ 库,可用来生成 MD5 和 SHA1 哈希算法。

http://hashlib2plus.sourceforge.net/

7. 常用的C语言算法库 libcstl

libcstl是使用c语言编写的一个通用的数据结构和常用的算法库,它模仿SGI STL的接口和实现,支持vector,list,deque等等常用的数据结构,同时还支持排序,查找,划分等常用的算法,此外libcstl也包含迭 代器的类型,它作为容器和算法之间的桥梁。libcstl为C语言编程中的数据管理提供了便利。

https://github.com/activesys/libcstl

8. C++加密算法库 Botan

Botan 是一个 C++ 的加密算法库,支持 AES, DES, SHA-1, RSA, DSA, Diffie-Hellman 等多种算法,支持 X.509 认证以及CRLs 和 PKCS #10 ,这里是一段示例代码

http://botan.randombit.net/

9. 计算几何算法库 CGAL

CGAL ,计算几何算法库,是一个大型C + +库的几何数据结构和算法,如Delaunay三角网,网格生成,布尔运算的多边形,以及各种几何处理算法。 CGAL是用来在各个领域:计算机图形学,科学可视化,计算机辅助设计与建模,地理信息系统,分子生物学,医学影像学,机器人学和运动规划,和数值方法。

http://www.cgal.org/

10.推荐系统的算法库 MyMediaLite

MyMediaLite 是一个轻量级的多用途的推荐系统的算法库。

它解决了两个最常见的场景的协同过滤:

评分预报 (1-5)
通过一些隐式的反馈进行预测

http://www.ismll.uni-hildesheim.de/mymedialite/

猜你喜欢

转载自blog.csdn.net/weixin_41213648/article/details/89435320