Я как раз читал Многопоточная сортировка слиянием в 3-м издании «Введение в алгоритм». Однако меня смущает количество процессоров, необходимых для следующего алгоритма Merge-Sort:
MERGE-SORT(A, p, r)
1 if p < r
2 q = (p+r)/2
3 spawn MERGE-SORT(A, p, q)
4 MERGE-SORT(A, q + 1, r)
5 sync
6 MERGE(A, p, q, r)
MERGE — это стандартный алгоритм слияния. Какое количество процессоров требуется для этого алгоритма?? Хотя я предполагаю, что это должно быть O (N), но в книге утверждается, что это O (log n), почему? Обратите внимание, что я не использую многопоточную процедуру MERGE. объяснение с примером будет действительно полезно. Заранее спасибо.