資源簡介
代碼稍微有點兒缺陷,默認是10個數據,用5個進程進行排序。所以其中的比較函數寫死了,大家可以自己重新改一下這里。
代碼片段和文件信息
#include?
#include?
#include?
#include?
using?namespace?std;
?
const?int?comm_sz=5;
//get?your?partner
int?Compute_partner(int?phaseint?rank)
{
????int?partner;
????if?(phase%2==0)
if?(rank%2!=0)
????partner=rank-1;
else
????partner=rank+1;
????else?
if?(rank%2!=0)
????partner=rank+1;
else
????partner=rank-1;
????if?(partner==-1||partner==comm_sz)
partner=MPI_PROC_NULL;
????return?partner;
}
void?swap(int&?aint&?b)
{
????int?tmp=a;
????a=b;
????b=tmp;
}
void?findMin(int*?aint*?b)
{
????int*?result=new?int[2];
????int?i=0j=0;
????while?((i+j)<2)
????{
if?(a[i] {
????result[i+j]=a[i];
????i++;
}
else
{
????result[i+j]=b[j];
????j++;
}
????}
????a[0]=result[0];
????a[1]=result[1];
}
void?findMax(int*?aint*?b)
{
????int*?result=new?int[2];
????int?i=1j=1;
????while?((i+j)>0)
????{
if?(a[i]>b[j])
{
????result[i+j-1]=a[i];
????i--;
}
else
{
????result[i+j-1]=b[j];
????j--;
}
????}
????a[0]=result[0];
????a[1]=res
- 上一篇:ArcScene制作簡單三維校園
- 下一篇:香農經典論文
評論
共有 條評論