さまざまなサイズのさまざまな配列を並べ替える必要があります。私のタイマーは私にナノ秒で非常に短い時間を与えていますが、ほとんどゼロです。問題を修正しようとしているタイマーの開始と終了を変更しましたが、失敗しました。誰か私のタイマーの問題は何かを私に見せてもらえますか?タイミングJavaバブルソートアルゴリズム
import java.util.Random;
import java.util.Scanner;
public class BubbleSort
{
public static void main(String[] args) {
Random rand = new Random();
Scanner input = new Scanner(System.in);
int m;
int n = 0;
int num_i = 0;
long startTime = System.nanoTime();
long running_time;
int temp;
System.out.print("Input array size: ");
n = input.nextInt();
System.out.print("Input number of arrays: ");
num_i = input.nextInt();
for(int j = 0; j < num_i; j++){
}
int array[] = new int [n];
for(int i = 0; i < n; i++)
{
for(m = 0; m < array.length; m++){
array[m] = (int)(Math.random()*100);
}
//int[] sorted = new int[n];
for (int k = 0; k < array.length; k++) {
for (int j = 1; j < (array.length - k); j++) {
//System.out.println("Start Time: " + startTime);
startTime =System.nanoTime();
if (array[j - 1] > array[j]) {
temp = array[j - 1];
array[j - 1] = array[j];
array[j] = temp;
}
long endTime = System.nanoTime();
running_time = endTime - startTime;
// System.out.println("End Time: " + endTime);
System.out.println(running_time);
}
}
}
}
}
あなたのコードは、タイマーが測定できるよりも速いです、それは問題です。 –