- 博客(1)
- 资源 (1)
- 收藏
- 关注
C++ 大整数类 高精度运算库
本运算库提供定长有符号大整数类的声明和基本操作的封装,实现过程仅使用基于C++98标准的基本语法,不依赖于任何标准库或者第三方库,以求最大限度保证代码的移植性(比如GCC和Visual Studio)和安全性(比如STL线程安全)。适合做为临时或快速替代方案使用。
本运算库采用模拟竖式算法,加法和减法的时间复杂度为O(N),乘法和除法的时间复杂度为O(N^2)。
本运算库最佳运行系统为32位。64位系统未能充分发挥硬件的性能,16位系统会有溢出问题(重新省视代码后确认此处README有误)。
基本操作列表如下:
1) 对象初始化为0或者1
2) C风格字符串的相互转换
3) 加、减、乘、除、取余5种双目运算
4) 负号1种单目运算
5) 大于、小于、等于3种比较运算
在Core i3 7100上,基于本运算库编写的Baillie-PSW素性测试程序,使用Dev-C++ 5.11编译O3优化,对10^999+7完成素性检验耗时2.5s。(可查到资料显示gmp库耗时约为0.17s,本运算库大约慢15倍左右)
2023-04-04
C++ Matrix 矩阵类 源代码
基于C++内置double类型和C++98标准,独立封装(除C++基本类型和语法,未使用任何第三方库或者语言内置标准库),包含:
1. 矩阵加法、减法、乘法和数乘运算
2. 矩阵求秩
3. 矩阵QR分解
4. 矩阵行列式和求逆
[由于使用double做为基本类型,运算后对误差会进行过滤操作(可调整)]
5. 矩阵转置
6. 矩阵大小设置
7. 矩阵元素输入输出
可作为C++基础语言学习的资料或者例子。也可以做为进一步数学实验或者应用的基础。
2020-02-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人