传统的查找方式
array — 数组名称
len — 数组长度
k — 要查找的数据
int Search(int array[] , int k ,int len)
{
for (int i = 0 ; i < len ; i++)
{
if (array[i] == k)
return i;
}
return 0;
}
int Search(int array[] , int k ,int len)
{
// 建立了哨兵的数组,即array[0] = k
for(int i = len-1, a[i] != k ; i--);
return i; // 如果没有找到i = 0,找到 i = 数据所在位置
}
总结:建立哨兵可以,减少一个判断分支。在数据量庞大的情况下,提高算法效率。