sort2.cpp
来自「Visual C++ 常用数值算法集 源代码」· C++ 代码 · 共 60 行
CPP
60 行
void sort2(int n, double ra[], double rb[])
{
int l,ir,i,j;
double rra,rrb;
l = n / 2 + 1;
ir = n;
do
{
if (l > 1)
{
l = l - 1;
rra = ra[l];
rrb = rb[l];
}
else
{
rra = ra[ir];
rrb = rb[ir];
ra[ir] = ra[1];
rb[ir] = rb[1];
ir = ir - 1;
if (ir == 1)
{
ra[1] = rra;
rb[1] = rrb;
return;
}
}
i = l;
j = l + l;
while (j <= ir)
{
if (j <= ir)
{
if (j < ir)
{
if (ra[j] < ra[j + 1])
{
j = j + 1;
}
}
if (rra < ra[j])
{
ra[i] = ra[j];
rb[i] = rb[j];
i = j;
j = j + j;
}
else
{
j = ir + 1;
}
}
}
ra[i] = rra;
rb[i] = rrb;
}while(1);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?