[問題] 向量元素累加
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
dev-c++
問題(Question):
一個向量內所有整數元素值累加
除了用下標的方式累加、用指標的累加外
還有執行速度會更快的方法嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.120.99.31
→
11/25 00:46, , 1F
11/25 00:46, 1F
→
11/25 00:51, , 2F
11/25 00:51, 2F
推
11/25 00:52, , 3F
11/25 00:52, 3F
#include <stdio.h>
#include <string.h>
int summation(int,int);
main()
{
time_t start_tm, finish_tm;
int i;
time(&start_tm);
for (i=1;i<=800000000;i++)
summation(2,8);
time(&finish_tm);
double elapsed_tm=difftime(finish_tm,start_tm);
printf("%f",elapsed_tm);
return 0;
}
int summation(int start,int end)
{
int i;
static int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
for (i=start;i<=end;i++)
a[0]+=a[i];
return a[0];
}
好像有快一點
原先是30秒 現在是28秒 @_@
※ 編輯: CDMA2000 來自: 122.120.99.31 (11/25 01:11)
→
11/25 01:17, , 4F
11/25 01:17, 4F
推
11/25 01:31, , 5F
11/25 01:31, 5F
→
11/25 01:33, , 6F
11/25 01:33, 6F
→
11/25 01:33, , 7F
11/25 01:33, 7F
→
11/25 01:47, , 8F
11/25 01:47, 8F
推
11/25 01:48, , 9F
11/25 01:48, 9F
→
11/25 01:50, , 10F
11/25 01:50, 10F
推
11/25 01:57, , 11F
11/25 01:57, 11F
→
11/25 02:03, , 12F
11/25 02:03, 12F
→
11/25 02:04, , 13F
11/25 02:04, 13F
→
11/25 02:05, , 14F
11/25 02:05, 14F
→
11/25 02:08, , 15F
11/25 02:08, 15F
→
11/25 02:10, , 16F
11/25 02:10, 16F
→
11/25 02:10, , 17F
11/25 02:10, 17F
→
11/25 02:10, , 18F
11/25 02:10, 18F
→
11/25 02:11, , 19F
11/25 02:11, 19F
→
11/25 02:11, , 20F
11/25 02:11, 20F
→
11/25 02:13, , 21F
11/25 02:13, 21F
→
11/25 02:14, , 22F
11/25 02:14, 22F
→
11/25 02:17, , 23F
11/25 02:17, 23F
→
11/25 03:48, , 24F
11/25 03:48, 24F
→
11/25 11:33, , 25F
11/25 11:33, 25F
→
11/25 20:02, , 26F
11/25 20:02, 26F
推
11/27 13:46, , 27F
11/27 13:46, 27F