Я хочу рассчитать время алгоритма сортировки пузырьков в C#. Но он всегда дает 0. Это мой код.Как получить время в миллисекундах?
public void bubbleSort(int[] arr, ref double time)
{
var sp = new Stopwatch();
sp.Start();
int temp = 0;
for (int i = 0; i < arr.Length; i++)
{
for (int sort = 0; sort < arr.Length - 1; sort++)
{
if (arr[sort] > arr[sort + 1])
{
temp = arr[sort + 1];
arr[sort + 1] = arr[sort];
arr[sort] = temp;
}
}
}
sp.Stop();
time = sp.Elapsed.Milliseconds*1000;
}
в основном время всегда 0. Какую ошибку я совершил в этом коде.
Вы отлаживаете свой код и видите значение «Миллисекунды»? –
Если ваш массив не очень большой, то, вероятно, ваш алгоритм занимает менее 1 мс для выполнения. –
Обычно для измерения времени вы выполняете альгорифм несколько тысяч или миллионов раз, потому что часто одна итерация занимает так мало времени, чтобы быть точно измеримой. – Alejandro