您的位置:首页 > 其它

ver[SIZE]保存的是[iBegin,iBegin+SIZE-1]区间的值,且无重复,请以O(N)时间复杂度和O(1)空间复杂度进行排序

2006-08-05 11:01 501 查看
bool Sort(int *ver,int const SIZE,int const iBegin=0)
//ver[SIZE]保存的是[iBegin,iBegin+SIZE-1]区间的值,且无重复;
//以下以O(N)时间复杂度和O(1)空间复杂度对原数组进行排序
{
int iCount=0;
for (int i=0;iCount<SIZE&&i<SIZE;++i)
{
if (ver[i]==i+iBegin)
{
continue;
}
while (ver[i]!=i+iBegin)
{
swap(ver[i],ver[ver[i]-iBegin]);
++iCount;
}
++iCount;
}
return true;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐