c++ 如何处理大数据

dudatong 2009-03-03 04:48:53
c++ 如何处理大数据

例如:
有这样一个整数 CString str=L"111111122222223333333444445555566666777778888899999999991010101010";
对它进行 + , - , * , / 的操作
...全文
531 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
自己下openssl,crypt++等大数库。
xtting_8984313 2009-03-03
  • 打赏
  • 举报
回复
要酱油
ysysbaobei 2009-03-03
  • 打赏
  • 举报
回复
mark,学习下
再顶
xiaoyuer5222 2009-03-03
  • 打赏
  • 举报
回复
给个算加法的

#include <stdio.h>
#include <string.h>
#include <malloc.h>
#include <stdlib.h>
char* big_add(char *a,char *b);


int main()
{
char a[1000]={0};
char b[1000]={0};
while(scanf("%s%s",a,b)!=EOF)
{
printf("%s + %s = ",a,b);
printf("%s\n",big_add(a,b));
}
return 0;
}

char* big_add(char *a,char *b)
{
/* 大数相加 ,两个加数以字符串的形式出现,返回指向结果的指针 */
char c[1000]={0};
char t[1000];
int length_short;
int length_long;
int length;
int i;
int j;
int k;
char *resultptr;
char *str;
k=0;
/* 使a成为位数较小的数 */
if (strlen(a)>strlen(b))
{
strcpy(t,a);
strcpy(a,b);
strcpy(b,t);
}
length_short=strlen(a);
length_long=strlen(b);
/* 将较少位数的数a的各位和较大位数的数b的后若干位依次相加,各位的和依次存在数组c中 */
for (i=length_short-1,j=length_long-1;i>=0;i--,j--)
{
if (a[i]-48+b[j]-48>=10)
{
/* 若相加的和大于10,则要进位 */
c[k]+=a[i]+b[j]-48-10;
k++;
c[k]+=1;
}
else
{
c[k]+=a[i]+b[j]-48;
if(c[k]-'0'>=10)
{
c[k]-=10;
k++;
c[k]+=1;
}
else
k++;
}
}
/* 如果两个数的位数不同,则将较多位数的数b的剩下位依次存到数组c中 */
for (;j>=0;j--)
{

if(c[k]+b[j]-48>=10)
{
c[k]+=b[j]-10;
k++;
c[k]+=1;

}
else
{
c[k]+=b[j];
k++;
}

}
/* 若果两个数位数相同,且最高位有进位 */
if (c[k]!=0)
{
c[k]+=48;
c[k+1]='\0';
}
else
c[k]='\0';

length=strlen(c);
resultptr=(char*)malloc(length+1);
if(!resultptr)
exit(1);
str=resultptr;
for(i=length-1;i>=0;i--)
*str++=c[i];
*str='\0';

return resultptr;
}

结果:
111111222222233333333
444444555555577777777
111111222222233333333 + 444444555555577777777 = 555555777777811111110
happy002 2009-03-03
  • 打赏
  • 举报
回复
csdn中好多关于这个的问题

比如我随便找一个http://topic.csdn.net/t/20060106/19/4502424.html

在提问中输入“大数”下面有好多
太乙 2009-03-03
  • 打赏
  • 举报
回复
xtting_8984313 2009-03-03
  • 打赏
  • 举报
回复
[Quote=引用楼主 dudatong 的帖子:]
c++ 如何处理大数据

例如:
有这样一个整数  CString  str=L"111111122222223333333444445555566666777778888899999999991010101010";
对它进行 + , - , * ,  / 的操作

[/Quote]


何谓 - , * , /对字串?
内容概要:本文档详细介绍了基于C++开发的电商大数据画像系统,旨在通过高效处理海量用户行为数据,构建精准的用户画像,从而实现个性化推荐、精准营销等目标。系统采用分层架构设计,涵盖数据采集、预处理、建模、存储和服务接口五大核心模块。关键技术包括多线程并发处理、分布式数据库、实时流处理、机器学习模型集成等。系统支持多种数据格式的统一处理,具备高并发访问和实时更新能力,并严格遵守数据隐私保护法规。此外,系统还提供了丰富的API接口和前端GUI界面,便于业务集成和用户操作。 适合人群:具备一定编程基础,特别是熟悉C++语言和大数据处理技术的研发人员、数据科学家及系统架构师。 使用场景及目标:① 实现用户行为数据的实时采集、清洗和特征提取;② 构建多维度、动态更新的用户画像;③ 支持个性化推荐、用户细分、风险控制等电商业务场景;④ 提升用户满意度和营销效果,降低运营成本。 阅读建议:由于该项目涉及复杂的技术栈和业务逻辑,建议读者在学习过程中结合实际案例进行实践,重点关注系统架构设计、模块化开发和性能优化等方面。同时,读者应关注数据隐私保护和合规管理,确保系统在法律法规框架内稳定运行。
内容概要:本文介绍了一个基于C++的电商大数据用户画像系统项目,旨在通过高效处理海量用户行为数据,构建精准、实时、动态更新的用户画像。系统采用分层架构设计,涵盖数据采集、处理、画像建模、存储与应用服务五大模块,融合多源数据(如浏览、搜索、购买等),利用K-means聚类、决策树分类和协同过滤等机器学习算法进行多维度分析,并通过C++高性能特性实现高并发、低延迟的数据处理与模型推断。项目还强调数据隐私保护、模块化设计与系统可扩展性,支持未来业务迭代和技术集成。文中提供了K-means算法的C++实现示例,展示了核心建模过程。; 适合人群:具备一定C++编程基础,熟悉数据结构与算法,有大数据处理或机器学习背景的中高级研发人员,尤其适合从事电商、用户画像、实时推荐系统开发的技术人员。; 使用场景及目标:① 构建高性能电商用户画像系统,实现精准营销与个性化推荐;② 学习如何在C++环境中集成机器学习模型并优化实时数据处理性能;③ 掌握大规模数据系统中的模块化设计、并发控制与跨平台实现方法; 阅读建议:建议结合代码示例深入理解算法实现,重点关注系统架构设计与性能优化策略,同时可联系作者获取完整项目代码与GUI设计资源以辅助实践。

70,026

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧