Когда я запускаю пузырьковые, коктейльные и быстрые сортировки в C #, я вижу, что все 3 ядра задействованы на моем AMD X3 (X4 поставляется с 1 сломанным ядром).
Почему это происходит?Мой алгоритм последовательный, и в моем коде нет тегов потоков.Особенно что-то вроде алгоритмов сортировки, которые являются очень последовательным алгоритмом. Нет, одно событие не может произойти, пока не будет выполнено следующее.Как удается разделить алгоритм?
Пузырьковая сортировка, например, по запросу:
public void BubbleSort()
{
for (int i = 1; i < amount; i++)
{
for (int j = 0; j < a; j++)
{
if (numbers[j] > numbers[j + 1])
{
t = numbers[j + 1];
numbers[j + 1] = numbers[j];
numbers[j] = t;
}
}
a--;
}
}