第9章查找-Read.ppt
第9章 查找;9.1 基本概念;(2)对查找表常用的操作有哪些?
查询某个“特定的”数据元素是否在表中;
查询某个“特定的”数据元素的各种属性;
在查找表中插入一元素;
从查找表中删除一元素。 ;明确:查找的过程就是将给定的K值与文件中各记录的关键字项进行比较的过程。所以用比较次数的平均值来评估算法的优劣。称为平均查找长度(ASL:average search length)。;针对静态查找表的查找算法主要有: ;一、顺序查找( Linear search,又称线性查找 );(2)算法的实现:;算法演示;——返回特殊标志,例如返回空记录或空指针。前例中设立了“哨兵”,就是将关键字送入末地址ST.elem[0].key使之结束并返回 i=0。
讨论② 查找效率怎样计算?
——用平均查找长度ASL衡量。;二、折半查找(又称二分查找或对分查找);② 运算步骤:
(1) low =1,high =11 ,mid =6 ,待查范围是 [1,11];
(2) 若 ST.elem[mid].key key,说明 key?[ mid+1,high] ,
则令:low =mid+1;重算 mid= ?(low+high)/2?;.
(3) 若 ST.elem[mid].key key,说明key?[low ,mid-1],
则令:high =mid–1;
原创力文档

文档评论(0)