两段代码,都是插入排序的代码
第一段:
void insertSort(int *pArray,int nSize)
{
if (pArray==NULL||nSize<=0)
{
return;
}
for (int i=1;i<nSize;i++)
{
int nTemp=pArray[i];
for (int j=i-1;j>=0;j--)
{
if (pArray[j]>nTemp)
{
pArray[j+1]=pArray[j];
}
else
{
pArray[j+1]=nTemp;
break;
}
}
}
}
第二段代码:
void insertSort(int *pArray,int nSize)
{
if (pArray==NULL||nSize<=0)
{
return;
}
for (int i=1;i<nSize;i++)
{
int nTemp=pArray[i];
for (int j=i-1;j>=0;j--)
{
if (pArray[j]>nTemp)
{
pArray[j+1]=pArray[j];
pArray[j]=nTemp;
}
else
{
break;
}
}
}
}
第一段有问题?出在边界上