如何优化时间?

How to optimize for time?

我试图了解在计算机程序中执行以下代码行时速度是否存在差异:

  1. 我的数组[1] = 5; return myarray[1];
  2. 我的数组[0] = 5; return myarray[0];
  3. x = 5; return x;
  4. x = 5; y = x; return 是;
  5. return 5;

据我了解,数组基本上是指针(存储其他变量的内存地址的变量)。因此 (1) 和 (2) 应该是相同的速度,但比 (3)、(4) 和 (5) 慢。

(5)应该是最快的,(3)应该比(5)慢,因为有一个等号,(4)应该比(3)慢,因为有两个等号需要得到处理。

这样对吗?

您没有给出 myarray、x 和 y 是什么的上下文。没有这种背景,就无法以任何有意义的方式回答这个问题。额外的分配可能没有无法优化的副作用。

基本上,在这种初级水平上看速度优化是完全没有意义的。如果你想看速度,你需要足够大的代码来测量执行时间。您无法在现代处理器上测量一两个简单语句的时间。