我创建了一个新的冒泡排序项目,我想知道它需要多少时间。因此,我添加了一个getTime()
返回 nanotime 的方法。我还创建了一个包含 9 个静态值的数组。当我运行我的代码时,我得到不同的运行时间(即:通常我得到 3849 ns,但有时是 6432 或 4277 ns)。怎么会这样?
我的代码如下:
long time2;
public void sort(int[] dizi){
long time = System.nanoTime();
for (int i = dizi.length-1; i >0; i--) {
for (int j = 0; j < i; j++) {
if(dizi[j]>dizi[j+1]){
super.swap(dizi, j, j+1);
}
}
}
time2 = System.nanoTime() - time;
}
public long getTime(long time){
return time;
}
main(){
BubbleSort bubbleSort = new BubbleSort();
int[] arr = {4,2,1,8,9,5,3,7,6};
bubbleSort.sort(arr);
Sysout(bubbleSort.getTime(time2));
}