设置哨兵的顺序查找:
顺序查找(SequentialSearch)的查找过程为:从表的一端开始,依次将记录的关键字和给定 值进行比较,若某个记录的关键字和给定值相等,则查找成功。
如果不设置哨兵在每次都需要比较是否查找完成,而在0号位设置哨兵可以免去查找过程中每一 步都要检测整个表是否查找完毕,大幅度提高算法效率。
算法效率:
时间复杂度为O(n)
既适用于顺序结构, 也适用链式结构,但当n很大时, 不宜采用顺序查找。
代码如下:
#include<stdio.h>
#include<stdlib.h>
typedef int KeyType;
typedef int InfoType;
//线性表的顺序存储
typedef struct
{
KeyType key;
InfoType otherinfo;
}ElemType;
typedef struct
{
ElemType