Page 124 - 高中 信息技术 选择性必修1 数据与数据结构
P. 124
第五章 数据结构的应用
找出该商品的信息,方便顾客查找商品。下面是顺序查找算法的核心代码:
int search(ShangPinType a[],int k,int n)
//在有n个元素的数组a中查找k
{
for(int i=0; i<n; i++) //顺序依次查找
if(k==a[i].BianHao) return i; //查找成功,则返回数组下标
return -1; //查找失败,返回-1
}
查询促销商品信息的完整程序请参阅教科书配套学习资源包,程序运行界面如图5-4
和图5-5所示。
广东教育出版社
图5-4 输入查找商品的编号
图5-5 显示查找结果
5.2.2 二分查找
顺序查找虽然能帮助顾客查找到所需信息,但由于超市销售的商品种类繁多,数据
量比较大,而顺序查找每次都要从头到尾去查找,需要花费不少时间,很多顾客没有耐
心长时间等待查询结果。所以查找的速度必须要快,可以考虑用查找速度更快的二分查
找来实现。
二分查找又称折半查找,是针对顺序存储的有序表(有序表是指各元素按关键字的值
以升序或降序存放的表)进行的查找,它是一种较常用的查找方法。在按升序存储的顺序
表a中查找k,其二分查找算法流程如下:
(1) 选取查找范围a[0]~a[n-1]。
(2) 选定查找范围的中点元素a[mid],与k值比较。
116 116
21X2204.indd 116 2019/9/26 13:53:38