很多小伙伴对计算机编程的算法感兴趣,但在很多竞赛类算法网站中,大数运算往往是必考的,而课本有基本未提及,所以,今天来提供算法的基本运算的源码(加减)。
对于大多数大数运算,往往是超出int 的范围,比如有2的100次方,100的100次方等等,或是超过题目内存限制,这时大数运算就能大展身手,其实,大数运算其实就是字符串的运算,再将其与结构体相结合。所以,对字符串和结构体还不熟悉的小伙伴建议先去复习这两方面的知识点。废话不多说,献上代码
#include<iostream>
#include<string.h> //注意包含此头文件
using namespace std;
struct beg //首先定义结构体
{
int d[1000]; //存储每个数码
int len; //记录大数长度
beg() //构造函数初始化结构体
{
memset(d,0,sizeof(d));
len=0;
}
};
struct beg change(char str[]);
struct beg add(beg a,beg b);
struct beg sub(beg a,beg b);
void show(struct beg c);
int com(beg a,beg b);
int main()
{
beg a,b,c;
char str1[1000],str2[1000]

本文针对编程竞赛中的大数运算问题,提供加减法的算法源码。当运算涉及超过int范围的大数,如2的100次方或100的100次方,大数运算就显得尤为重要。该算法基于字符串操作和结构体实现,建议读者具备字符串和结构体基础知识。
最低0.47元/天 解锁文章

1万+

被折叠的 条评论
为什么被折叠?



