普通实现:
unsigned int SeqSearch(int *pArray, int arraySize, int value)
{
if (pArray != NULL && arraySize > 0)
{
for (int i = 0; i < arraySize; i++)
{
if (pArray[i] == value)
return i;
}
return -1; // 给定内存中不存在 value
}
return -2; // 给定内存或查找范围无效
}
高效实现:
unsigned int SeqSearchPlus(int *pArray, int arraySize, int value)
{
if (pArray != NULL && arraySize > 0)
{
pArray[arraySize] = value; // 确保不会越界才可以使用
int i = 0;
while (pArray[i] != value)
++i;
if (i == arraySize)
return -1;
else
return i;
}
return -2; // 给定内存或查找范围无效
}