gpt4 book ai didi

Java冒泡排序算法计时器问题

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:28:33 26 4
gpt4 key购买 nike

我正在尝试使用计数器和计时器检查此 java 冒泡排序算法的效率。计数器工作正常,但计时器似乎考虑了用户输入要排序的数字集需要多长时间。我只希望计时器计时冒泡排序算法需要多长时间进行排序。任何提示或帮助将不胜感激:)

public class bubsort {

public static void main(String[] args) {
int n, c, d, swap;
Long startTimer;
Scanner in = new Scanner(System.in);

System.out.println("Input number of integers to sort");
n = in.nextInt();

int array[] = new int[n];
int counter = 0;

System.out.println("Enter " + n + " integers");

for (c = 0; c < n; c++) {
array[c] = in.nextInt();
}

startTimer = System.nanoTime();

for (c = 0; c < (n - 1); c++) {

for (d = 0; d < n - c - 1; d++) {
counter++;
if (array[d] > array[d + 1]) {
swap = array[d];
array[d] = array[d + 1];
array[d + 1] = swap;

}
}
}
System.out.println(System.nanoTime() - startTimer + "ms");

System.out.println("Sorted list of numbers");

for (c = 0; c < n; c++) {
System.out.println(array[c]);
}
System.out.println("Counter: " + counter);

最佳答案

将 startTimer 移到嵌套循环之前,但在输入循环之后。然后回想一下 nanoTime 给出的是 ns 而不是 ms。如果您想要毫秒,请使用 System.currentTimeMillis()。

关于Java冒泡排序算法计时器问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21147921/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com