题目描述

有10个整数已按从小到大的顺序排好序,存储在一个数组中,再输入一个数,要求用折半查找法找出该数是数组中的第几个元素(输出该元素的下标即可)。如果该数不在数组中,则输出"Not exist!"

输入

输入数据共2行

第一行10个整数,按从小到大的顺序输入,中间以空格分隔。

第二行1个整数

输出

折半查找所得该数所在数组中的元素下标,单独占一行。

若该数不存在,则输出一行信息 "Not exist!"

样例输入

1 2 3 4 5 6 7 8 9 10
3

样例输出

2
#include<stdio.h>
int main()
{int n=9,m,i,a[10],j=0,k,s=0;for(i=0;i<10;i++)scanf("%d",&a[i]);scanf("%d",&m);while(1){s++;k=n;n=(n+j)/2;if(a[n]==m){printf("%d\n",n);break;}else if(a[n]<m)j=k;else j=0;if(s==5){printf("Not exist!\n");break;}}return 0;
}

1095 习题6-9 折半查找相关推荐

  1. 数据结构折半查找例题_数据结构查找习题及答案

    第九章 查找 一. 选择题 1. 若查找每个记录的概率均等, 则在具有 n 个记录的连续顺序文件中采用顺序查找法查找一 个记录,其平均查找长度 ASL 为 (    ) . A . (n-1)/2   ...

  2. 题7.15:要求输入一个职工号,用折半查找法查找出该职工的姓名,从主函数输入要查找的职工号,输出该职工姓名。按职工号由小到大顺序排序,姓名顺序也随之调整

    题目 本题是谭浩强<C程序设计课后习题>题7.15. 题目: 写几个函数: 1.输入10个职工的姓名和职工号. 2.按职工号由小到大顺序排序,姓名顺序也随之调整 3.要求输入一个职工号,用 ...

  3. java 用折半查找,java折半查找算法

    //当 low>high 时表示查找区间为空,查找失败 } Java 代码: /** * 二分查找算法 * * @param srcArray 有序数组 * @param target 被查找的 ...

  4. 数据结构与算法(8-2)有序表查找(折半查找(二分查找)、插值查找)

    目录 一.折半查找(二分查找) 二.插值查找 总代码 一.折半查找(二分查找) 原理:一次次折半,不断向着查找值的位置靠近 . 适用场景:有序(必须) 流程:开始时,min标志首,max标志尾,med ...

  5. python123第k序元素查找_Python实现折半查找并用matplotlib实现动态过程可视化

    折半查找是算法中减治策略的基本例子,实现起来也很简单,但是在网上看到的图片教程不觉得很乾巴麽?? 在这里插入图片描述 这是一个简单的实现: def Reduction(lists, k): " ...

  6. 折半查找函数(from 《The C Programming Language》)

    该函数用于判定已排序的数组array中是否存在某个特定的值value.这里假定数组元素以升序排列,如果数组array中包含value,则函数返回value在array中的位置(介于0~n-1之间的一个 ...

  7. 数据结构之二分查找(折半查找)

    数据结构之二分查找(折半查找) 二分查找又称折半查找,优点是次数比较少,查找速度快,平均性能好,其缺点是要求待查表为有序表,且插入删除困难.因此,折半查找方法适用于不经常变动而查找频繁的有序列表.首先 ...

  8. python实现二分查找(折半查找)算法

    python实现二分查找算法 二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法.但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列. 查找又称折半 ...

  9. 查找(包括顺序查找和折半查找)

    顺序查找 顺序查找又叫线性查找,主要用于线性表中的查找.顺序查找通常情况下分为对一般无序线性表的查找和对按关键字有序的顺序表的查找.下面进行比较讨论: 1.一般线性表的查找 作为一个直观的查找方法,其 ...

最新文章

  1. python乐观锁代码实现_Elasticsearch系列—并发控制及乐观锁实现原理
  2. 初步学习Spring Aop使用之注解方式
  3. openresty开发系列21--lua的模块
  4. 5单个编译总会编译全部_JDBC【5】 JDBC预编译和拼接Sql对比
  5. Mr.J-- jQuery学习笔记(五)--属性及属性节点
  6. TensorFlow的一些基本概念
  7. 计算机电缆头子怎么做,电缆头制作怎么算量怎么套定额
  8. haproxy Starting proxy XXX: cannot bind socket
  9. @spoj - lcs2@ Longest Common Substring II
  10. ASP.NET中的EnableViewState
  11. mysql ipk 编译_OpenWrt的ipk包安装
  12. java实现ftp文件上传失败_用java+ftp实现文件上传的问题?
  13. java单例模式(下)
  14. 微带线电容设计与仿真
  15. 陈庆平获评2021年湖南省“最美科技工作者”
  16. 机器学习模型可解释性进行到底 —— SHAP值理论(一)
  17. 高效持续交付的7大原则
  18. 记一次方案设计的前瞻性
  19. 可能是全网最简明的量子纠缠科普
  20. WMS系统在仓库数字化管理中的作用

热门文章

  1. 网易严选——迅速崛起的新消费品牌
  2. 自动生成订单号(固定+日期+数字)
  3. Java需求出发:tk mybatis example
  4. 回合制小游戏(英文)
  5. 美团点评Robust(泛型与热更新方案)
  6. 使用Spyder2 Express校色仪对屏幕进行校色
  7. ERP解决方案选型指导
  8. 阿里云服务器在哪?阿里云服务器最新可选地域分享
  9. Steam游戏的爬取与分析
  10. 标准差详解-一文搞懂标准差的含义