题库 软件开发 题目列表 设有 N 个物体的坐标 (x, y, z) 和速度 (vx, vy, vz...
单选题
设有 N 个物体的坐标 (x, y, z) 和速度 (vx, vy, vz),求经过 dt 时间之后物体的新坐标,以下有两种方式(C++):
方法一:
struct Object {
  float x, y, z;
  float vx, vy, vz;
};

Object obj[N];

for (int i = 0; i < N; i++) {
  obj[i].x += obj[i].vx * dt;
  obj[i].y += obj[i].vy * dt;
  obj[i].z += obj[i].vz * dt;
}
方法二:
struct ObjectArray {
  float x[N], y[N], z[N];
  float vx[N], vy[N], vz[N];
};

ObjectArray obj_all;

for (int i = 0; i < N; i++) {
  obj_all.x[i] += obj_all.vx[i] * dt;
  obj_all.y[i] += obj_all.vy[i] * dt;
  obj_all.z[i] += obj_all.vz[i] * dt;
}
在最高级别的优化选项(-O3)下,两种方式运行速度相比()
A.

方法一运行速度更快

B.

方法二运行速度更快

C.

两种方法速度差不多

题目信息
校招真题
-
正确率
0
评论
22
点击