我正在寻找用于气泡排序的并行编程算法。我理解该过程,但是不知道。它如何工作?进程ID或标签ID(用于每个进程)如何处理交换索引,以及它如何通过排序中的顺序编程解决问题?我在下面给出的著名站点中提到了它的算法,在此先感谢您。< / p>
procedure ODD-EVEN_PAR (n)
begin
id := process's label
for i := 1 to n do
begin
if i is odd and id is odd then
compare-exchange_min(id + 1);
else
compare-exchange_max(id - 1);
if i is even and id is even then
compare-exchange_min(id + 1);
else
compare-exchange_max(id - 1);
end for
end ODD-EVEN_PAR