小编LGD*_*ODV的帖子

C++,为什么数组比向量更快并且使用更少的内存

在一道leetcode题中。当我用来std::vector存放东西的时候。 i_max、 和j_max是整数。

vector<int> left_vec(i_max);
vector<int> right_vec(j_max);
Run Code Online (Sandbox Code Playgroud)

运行时间:100ms,内存使用:71.5MB。

当我用来std::array存放东西的时候。

int left_vec[i_max];
int right_vec[j_max];
Run Code Online (Sandbox Code Playgroud)

运行时间:40ms,内存使用:16.1MB。

代码的其他部分完全相同,唯一的区别是使用向量或数组。

我很困惑为什么会这样。

c++ memory runtime std

-2
推荐指数
1
解决办法
1067
查看次数

标签 统计

c++ ×1

memory ×1

runtime ×1

std ×1