算法-查找之一顺序查找
查找-是最常见的数据操作之一,数据结构核心运算之一,其重要性不言而喻。顺序查找是人们最熟悉的查找策略,对于小规模的数据,顺序查找是个不错的选择。
1.顺序查找:
核心:从数据的第一个元素开始,依次比较,直到找到目标数据或查找失败。
1.从表中的第一个元素开始,依次与关键字比较。
2.若某个元素匹配关键字,则 查找成功。
3.若查找到最后一个元素还未匹配关键字,则 查找失败。
如下:从第一个关键字开始:
依次与关键字比较:
顺序查找对表中元素的排序无要求,这些元素在表中可以任意排序,这使得顺序查找的适应性很高。顺序查找的实现很简单,其示例代码如下:
示例程序如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | #include<stdio.h> int Search(int Array[],int key,int n) { for(int index=0;index<n;index++) { if(Array[index]==key) return index; } return -1; } int main(){ int Array[10]={1,5,3,2,6,7,9,0,8,4}; printf("3的位置为:%d \n",Search(Array,3,10)); //位置从0开始算 return 0; }
|
顺序查找平均关键字匹配次数为表长的一半,其时间复杂度为O(n)。
3.顺序查找的评估:
顺序查找的优点是对表无要求,插入数据可在O(1)内完成。缺点是时间复杂度较大,数据规模较大时,效率较低。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。