标签:code isp arc src 判断 table 思想 优化 顺序表
顺序查找,又叫“线性查找”,通常用于线性表
从头到尾查
typedef struct{ //查找表的数据结构(顺序表)
ElemType *elem; //动态数组的基址
int TableLen; //表的长度
}SSTable;
//顺序查找
int Serach_Seq(SSTable ST,ElemType key){
int ;
for(i=0;i<ST.TableLen && ST.elem[i] != key;++i);
//查找成功,则返回元素下标;查找失败,则返回-1
return i == ST.TableLen ? -1 : i;
}
typedef struct{
ElemType *elem;
int TableLen;
}
//顺序查找
int Search_Seq(SSTable ST,ElemType key){
ST.elem[0] = key; //哨兵
int i;
for(i=ST.TableLen;ST.elem[i]!=key;--i);
return i;
}
优点:无需判断是否越界,效率更高。
共有n+1种查找失败的情况
把被查找概率大的放在前面。
{{uploading-image-757343.png(uploading...)}}
标签:code isp arc src 判断 table 思想 优化 顺序表
原文地址:https://www.cnblogs.com/jev-0987/p/13307719.html