数据结构-查找-线性表查找技术
Posted 邓佳程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构-查找-线性表查找技术相关的知识,希望对你有一定的参考价值。
顺序表的查找技术
假设有一组书8,5,9,80,16,5,56。。。。如何查找我们的value?
一般为
for(int i=0;i<size;i++)
{ if(arry[i]==value) {
return i;
}
}
return false;
看第一个for循环中每次都需要判断一次i<size,那我们遍历100个数最坏情况下其实是比较了200次。
于是我们设定一个哨兵在a[0],然后while循环从后往前比较,加入比较到就返回i,否则返回0。
1 int search(vector<int>& v,int value) 2 { 3 v[0]=value; 4 int i=v.size(); 5 while(i!=value) 6 { 7 i--; 8 } 9 return i; 10 }
这样就减少了一半的查找时间。
以上是关于数据结构-查找-线性表查找技术的主要内容,如果未能解决你的问题,请参考以下文章