例如,我正在运行一个简单的嵌套循环,该循环在两个数组中查找重复元素。对于 2000 的列表大小,如果我连续多次运行该程序,平均需要大约 25 毫秒(猜测)。但是,在 for 循环中运行程序一次,我循环它的次数越多,一次迭代的平均运行时间就越快。例如,10 次是每次迭代 5 毫秒,10000 次是 2 毫秒。
我必须测量几种不同类型的列表交集(例如嵌套循环、二进制搜索等)在不同列表大小下的运行时间,所以我不确定哪个更准确。对于较长的人来说,它变得更加成问题,因为运行这么多次需要太长时间。
for (int i = 0; i < A.length-1; i++) {
for (int j = 0; j < B.length-1; j++) {
if (A[i] == B[j]) {
inter++;
}
}
}
我如何生成使用的列表:
public studentList(int size, String course) {
int IDrange=2*size;
studentID=new int[size];
boolean[] usedID=new boolean[IDrange];
for (int i=0;i<IDrange;i++) usedID[i]=false;
for (int i=0;i<size;i++) {
int t;
do {
t=(int)(Math.random()*IDrange);
} while (usedID[t]);
usedID[t]=true;
studentID[i]=t;
}
courseName=course;
numberOfStudents=size;
}