ch4_1查找2中国石油大学 {华东} 软件设计基础.pptVIP

  • 39
  • 0
  • 约1.39万字
  • 约 59页
  • 2017-08-15 发布于江西
  • 举报

ch4_1查找2中国石油大学 {华东} 软件设计基础.ppt

ch4_1查找2中国石油大学 {华东} 软件设计基础.ppt

4.1 查找 4.1.1 查找的基本概念 4.1.2 线性表的查找 4.1.3 二叉排序树查找 4.1.4 哈希表及其查找 4.1.5 查找小结 查找方法评价 平均查找长度ASL(Average Search Length):为确定记录在表中的位置,需进行的关键字比较次数的期望值叫查找算法的~ 4.1.2 线性表的查找 1. 顺序查找 2. 折半查找 3. 分块查找 1、 顺序查找 查找过程:从表的一端开始逐个进行记录的关键字和给定值的比较,直到找到关键字等于K的记录或到达表的另一端。 可以采用从前向后查,也可采用从后向前查的方法。 在下面两种情况下只能采取顺序查找: a. 线性表为无序表(元素排列是无序的); b. 即使是有序线性表,但采用的是链式存储结构。 1、 顺序查找 算法描述 2 折半查找 查找过程:每次将待查记录所在区间缩小一半 适用条件:采用顺序存储结构的有序表 算法实现 设表长为n,low、high和mid分别指向待查元素所在区间的上界、下界和中点,k为给定值 初始时,令low=1, high=n, mid=?(low+high)/2? 让k与mid指向的记录比较 若k==r[mid].key,查找成功 若kr[mid].key,则high=mid-1 若kr[mid].key,则low=mid+1 重复上述操作,直至lowhigh时,查找失败

文档评论(0)

1亿VIP精品文档

相关文档