顺序查找过程:从表中的最后一个记录开始,逐个进行记录的关键字与给定值进行比较,若某个记录的关键字与给定值相等,则查找成功,找到所查的记录;反之,若直到第一个记录,其关键字和给定值比较都不相等,则表明表中没有所查的记录,查找失败。
  算法描述为
  int Search(int d,int a[],int n)
  {
  /在数组a[]中查找等于D元素,若找到,则函数返回d在数组中的位置,否则为0。其中n为数组长度/
  int i ;
  /从后往前查找/
  for(i=n-1;a!=d;–i)
  return i ;
  /如果找不到,则i为0/
  }
  二分查找又称折半查找,它是一种效率较高的查找方法。

【二分查找要求】:1.必须采用顺序存储结构2.必须按关键字大小有序排列。
【优缺点】折半查找法的优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。
  【算法思想】首先,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。
  重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。
  【算法复杂度】假设其数组长度为n,其算法复杂度为o࿰

【数据结构 严蔚敏版】 查找基本操作相关推荐

  1. 【数据结构 严蔚敏版】 二叉树 基本操作

    计算机科学中,二叉树是每个结点最多有两个子树的树结构.通常子树被称作"左子树"(left subtree)和"右子树"(right subtree).二叉树常被 ...

  2. 有关数据结构基础知识(数据结构 严蔚敏版)

    1. 数据结构是一门研究非数值计算程序设计中的操作对象 以及这些对象之间的关系和操作的学科 2. 研究包括逻辑结构和存储结构 1) 逻辑结构(从具体问题抽象出来的数学模型)分为 集合结构 线性结构 树 ...

  3. 字符串静态顺序结构C/C++实现(数据结构严蔚敏版)

    1.头文件String.h #include<stdio.h> #include<stdlib.h> #include<string.h> #include< ...

  4. 队列链式结构C/C++实现(数据结构严蔚敏版)

    1.头文件Queue.h; #include<iostream> #include<iomanip>//格式控制头文件 #include<stdlib.h> usi ...

  5. 队列顺序结构C/C++实现(数据结构严蔚敏版)

    1.头文件Queue.h #include<iostream> using namespace std;//定义4个空间,留出一个作为标志位,当Q.rear+1 / MAXQSIZE = ...

  6. 栈C/C++实现(数据结构严蔚敏版)

    1.头文件:stack.h #include<iostream> #include<malloc.h> using namespace std; typedef int Sta ...

  7. 循环链表C/C++实现(数据结构严蔚敏版)

    1头文件LinkList.h: #include<iostream> using namespace std; #include<malloc.h>#define error ...

  8. 线性表的C/C++实现(数据结构 严蔚敏版)

    下面的代码是项目文件:一个头文件.一个源文件.一个测试文件 1.头文件List.h: #include<iostream> using namespace std; #include< ...

  9. [数据结构-严蔚敏版]P95矩阵压缩-特殊矩阵的存储(对称矩阵,三角矩阵)

    对称矩阵的存储: 代码如下: #include <iostream> using namespace std;int main() {int n;cin >> n;int *a ...

最新文章

  1. 填平新版本Xcode安装插件不成功的坑
  2. Python列表和字典的方法总结
  3. 高性能 HTML5 地铁样式的应用程序中的内容
  4. linux python pymysql,Python之pymysql的使用
  5. linux下用户及用户组的管理
  6. Virtuabox 虚拟机克隆方法
  7. C#中的Boolean类型
  8. 5.abp框架code first方式删除表
  9. Music-Downloader:功能强大的音乐下载器
  10. VINS-Mono关键知识点总结——边缘化marginalization理论和代码详解
  11. 互联网加速职场变革 大数据催生业界十大热门职业
  12. 360一直把oracle当成病毒,为什么360一直把软件程序当做木马?
  13. Android渠道包构建流程
  14. 美团旅行前端技术体系的思考与实践
  15. 全网最易懂的Flink背压问题,看不懂你打我~
  16. 纪念谢尔盖·科尔塔科夫
  17. 直流放大器2级电路设计
  18. 用python爬取考研信息网_用Python爬取了考研吧1000条帖子,原来他们都在讨论这些!...
  19. 锁消除、锁粗化、偏向锁、适应性锁
  20. 笔记本 windows10使用耳机看视频 刚开始会有几秒的无声

热门文章

  1. Socket接口测试
  2. shell 中 exit0 exit1 的区别
  3. for each循环(数组打印)
  4. mac磁盘工具显示未装载 磁盘读写速度慢的原因
  5. Liger ui grid 参数
  6. 基于深度学习方法的声纹识别(Speaker Recognition)论文综述
  7. 服务器速度变慢是什么原因?
  8. 计算机程序设计艺术 第2卷
  9. 杭电OJ 1061(C++)
  10. 必看,跨境电商的ERP系统的讲解