如何将两个数组之间的对应js将元素存入数组做加法操作

"c语言两个数组相加"的糗事
15456 好笑
你可能感兴趣:
糗事百科为大家收集了很多的c语言两个数组相加的糗事,各种关于c语言两个数组相加的爆笑经历、尴尬时刻和开心视频,想持续关注c语言两个数组相加的糗事就收藏本页吧.
扫码下载糗事百科app如何将两个数组之间的对应元素做加法操作?
[问题点数:100分,结帖人CSDN]
本版专家分:629
结帖率 98.58%
CSDN今日推荐
本版专家分:629
结帖率 98.58%
本版专家分:42357
2006年4月 荣获微软MVP称号2008年4月 荣获微软MVP称号2007年4月 荣获微软MVP称号
2006年6月 VB大版内专家分月排行榜第一
2006年5月 VB大版内专家分月排行榜第三2005年9月 VB大版内专家分月排行榜第三
结帖率 100%
本版专家分:629
结帖率 98.58%
本版专家分:5354
本版专家分:166995
2005年1月 荣获微软MVP称号2004年1月 荣获微软MVP称号
2007年5月 VB大版内专家分月排行榜第一2007年4月 VB大版内专家分月排行榜第一2005年12月 VB大版内专家分月排行榜第一2004年2月 VB大版内专家分月排行榜第一2004年1月 VB大版内专家分月排行榜第一2003年11月 VB大版内专家分月排行榜第一2003年10月 VB大版内专家分月排行榜第一
2007年6月 VB大版内专家分月排行榜第二2006年3月 VB大版内专家分月排行榜第二2006年2月 VB大版内专家分月排行榜第二2006年1月 VB大版内专家分月排行榜第二2004年9月 VB大版内专家分月排行榜第二2004年8月 VB大版内专家分月排行榜第二2004年3月 VB大版内专家分月排行榜第二2003年12月 VB大版内专家分月排行榜第二2003年9月 VB大版内专家分月排行榜第二2003年7月 VB大版内专家分月排行榜第二2003年6月 VB大版内专家分月排行榜第二2003年5月 VB大版内专家分月排行榜第二
2005年11月 VB大版内专家分月排行榜第三2004年7月 VB大版内专家分月排行榜第三
本版专家分:803
匿名用户不能发表回复!|
CSDN今日推荐Nothing replaces hard work
[面试题]设计一个算法找到数组中两个元素相加等于指定数的所有组合
思路1:可以用hash表来存储数组中的元素,这样我们取得一个数后,去判断sum - val 在不在数组中,如果在数组中,则找到了一对二元组,它们的和为sum,该算法的缺点就是需要用到一个hash表,增加了空间复杂度。
思路2:同样是基于查找,我们可以先将数组排序,然后依次取一个数后,在数组中用二分查找,查找sum -val是否存在,如果存在,则找到了一对二元组,它们的和为sum,该方法与上面的方法相比,虽然不用实现一个hash表,也没不需要过多的空间,但是时间多了很多。排序需要O(nLogn),二分查找需要(Logn),查找n次,所以时间复杂度为O(nLogn)。
思路3:该方法基于第2种思路,但是进行了优化,在时间复杂度和空间复杂度是一种折中,但是算法的简单直观、易于理解。首先将数组排序,然后用两个指向数组的指针,一个从前往后扫描,一个从后往前扫描,记为first和last,如果 fist + last & sum 则将fist向前移动,如果fist + last & sum,则last向后移动。
#include &iostream&
#include &algorithm&
void printPairSums(int data[], int size, int sum);
int main(int argc, char* argv[])
int data[] = {1, 5, 9, -1, 4, 6, -2, 3, -8};
int size = sizeof(data) / sizeof(data[0]);
sort(data, data + size);
printPairSums(data, size, 8);
void printPairSums(int data[], int size, int sum)
int first = 0;
int last = size -1;
int s = 0;
while (first & last)
s = data[first] + data[last];
if (s == sum)
cout && data[first] && " + " && data[last] && " = " && sum &&
else if (s & sum)
}参考资料:
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!两个一维数组,里面各有上百万数据,数据之间有空格,用C语言编程实现对应元素相加,得到数组并输出。_百度知道
两个一维数组,里面各有上百万数据,数据之间有空格,用C语言编程实现对应元素相加,得到数组并输出。
两个数组都有名字,用读取的方式读取,结果数组格式与原数组格式完全一样
要用读取的方式读取数组,因为需要用同样的方式处理更多的数组。要读取的数组是txt格式的,比如设为file1.txt和file2.txt: 里面的数据格式如
23 13 18 22 15 19 28 20 18 22 18 16 19 10 14 17 16 12 29 14 11 16 13 5 16 11 9.... 请麻烦您将具体的程序列出来啊,我编程学的不好啊!
我有更好的答案
#include &stdio.h&int main(){
freopen(&e:\\text.txt&,&r&,stdin);
//文件流代替控制台输入流读入其他的代码都可以不改。int sum=0,n;
while (scanf(&%d&,&n)!=EOF)
printf(&%d\n&,sum);} 多文件操作,还是用文件流吧,附代码#include &stdio.h&int main(){ FILE *f1=fopen(&e:\\file1.txt&,&r&); FILE *f2=fopen(&e:\\file2.txt&,&r&); FILE *f3=fopen(&e:\\file.txt&,&w&); int a,b,c; fscanf(f1,&%d&,&a); fscanf(f2,&%d&,&b); c=a+b; fprintf(f3,&%d &,c);} 多个数据的话再加个循环#include &stdio.h&int main(){ FILE *f1=fopen(&e:\\file1.txt&,&r&); FILE *f2=fopen(&e:\\file2.txt&,&r&); FILE *f3=fopen(&e:\\file.txt&,&w&); int a,b,c; while (fscanf(f1,&%d&,&a)!=EOF && fscanf(f2,&%d&,&b)!=EOF) {
fprintf(f3,&%d &,c); }}
采纳率:50%
循环里加一个静态变量控制指向第二个数组的位置,这样单重循环就解决问题了qq
用sscanf函数sscanf(str,&%f&,&data)你要处理的是str指针应当指在空格后面的第一个字符,data还要保存到数据数组中。
为您推荐:
其他类似问题
您可能关注的内容
c语言编程的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
var arr1 = [1,2],
arr2 = [3,4];
我希望得到一个新的数组是 arr = [4,5] 也就是 arr[0] = arr1[0]+arr2[0] 以此类推。我现在只能想到循环的方式,求其他方法。
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
既然不想用循环,那递归也是方法之一,也可用 map()
javascriptvar a = [1,2,3]
var b = [5,7,9]
var c = a.map(function(v, i) {
return v + b[i]
// [3,9,12]
既然有了这个思路,试试 forEach() 怎么样
javascriptvar a = [1,2,3]
var b = [5,7,9]
var c = []
a.forEach(function(v, i) {
c.push(v + b[i])
// [3,9,12]
然后,封装成一个函数,顺便处理数据长度不一致的情况
javascriptfunction merge(a, b) {
if (b.length & a.length) {
return a.map(function(v, i) {
return v + (b[i] || 0)
var a = [1,2,3]
var b = [5,7,9,10]
var c = merge(a, b)
// [3,9,12,10]
同步到新浪微博
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。

我要回帖

更多关于 js将元素存入数组 的文章

 

随机推荐