1 import java.util.Scanner;
 2
 3 /**
 4  * @author Administrator 折半查找
 5  */
 6 public class zhebansousuo {
 7
 8     public static void main(String[] args) {
 9         int[] a = new int[100];
10         int x, b;
11         Scanner cin = new Scanner(System.in);
12         x = cin.nextInt();
13
14         for (int i = 0; i < x; i++) {
15             a[i] = cin.nextInt();
16         }
17         b = cin.nextInt();
18         System.out.println(sea(a, b, 0, x));
19
20     }
21
22     public static int sea(int[] a, int x, int beg, int last) {
23         int mid;
24         if (beg > last) {
25             return -1;
26         }
27         while (beg <= last) {
28             mid = (beg + last) / 2;
29             if (x == a[mid]) {
30                 return mid;
31             } else if (a[mid] < x) {
32                 beg = mid + 1;
33             } else if (a[mid] > x) {
34                 last = mid - 1;
35             }
36         }
37         return -1;
38     }
39
40 }

折半查找

转载于:https://www.cnblogs.com/sxmcACM/p/3468366.html

java折半查找(正常的折半查找)相关推荐

  1. Java有序表查找:折半查找、二分查找、差值查找和斐波那契查找

    Java有序表查找:折半查找.二分查找.差值查找和斐波那契查找     [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/details/51 ...

  2. c语言实验报告 折半查找法,C语言数组之冒泡排序+折半查找法(二分查找)

    冒泡排序算法 将相邻的元素进行两两比较,大的向后"冒", 小的向前"赶". 口诀: N个数字来排队,两两比较小靠前 外层循环N-1(控制需要比较的轮数). 内层 ...

  3. 二分查找算法(折半查找算法)

    二分查找算法(折半查找算法) 二分查找又称折半查找.二分搜索.折半搜索等,是在分治算法基础上设计出来的查找算法,对应的时间复杂度为O(logn). 二分查找算法仅适用于有序序列,它只能用在升序序列或者 ...

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

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

  5. 数据结构——查找:折半查找、二叉查找(排序)树、平衡二叉树

    七大查找算法:https://www.cnblogs.com/zhang-qc/p/8745153.html 学习的地址 https://www.bilibili.com/video/av278314 ...

  6. 数据结构之查找算法:折半查找

    查找算法:折半查找 思维导图: 算法思想: 代码实现: 判定树: 折半查找判定树的构造: 顺序查找与折半查找对比: 思维导图: 算法思想: 代码实现: typedef struct {int *ele ...

  7. 查找算法:折半查找算法实现及分析

    折半查找算法介绍 折半查找(Binary Search)又称为二分查找.它的前提是线性表中的记录必须是关键码有序(通常从小到大有序),线性表必须采用顺序存储.从算法名称可以看出算法的思路,先取有序序列 ...

  8. 修改折半查找算法进行范围查找

    /*************************************** *修改折半查找算法进行范围查找  ***************************************/ # ...

  9. 二分查找的平均查找长度_二分查找(折半查找)代码实现

    整理不易,手有余香请点赞! 折半查找,也称二分查找,在某些情况下相比于顺序查找,使用折半查找算法的效率更高.但是该算法的使用的前提是静态查找表中的数据必须是有序的. 在折半查找之前对查找表按照所查的关 ...

  10. 顺序查找、折半查找及索引顺序查找

    静态查找表 只做查询的操作的查找表 动态查找表: 若在查找过程中同时插入查找表中不存在的数据元素,或者从查找表中删除已存在的某个数据元素 顺序查找: 从开头一个个比较,直到查找到关键字或者到达末尾 平 ...

最新文章

  1. 学习ui设计的流程是什么
  2. 微信小程序 - 关闭当前页面无法再通过左上角返回
  3. Spring注解之@validated的使用
  4. 爬虫笔记:Python Selenium详解
  5. 为什么计算机硬盘要从c盘开始,电脑分区为何从C盘开始?英特尔科普
  6. robo3t 连接服务器数据库_mongodb开启公共IP访问及Robo 3T连接远程mongodb服务器
  7. opencv-api drawKeyPoints
  8. ROS学习——2编写简单的发布者和订阅者
  9. C++递归方法实现全排列
  10. vivado 下载代码到flash
  11. ajax回调的data,。。。Ajax的回调函数function(data)中,data的返回类型。。。
  12. ROSERROR : The root link_base has an inertia specified in the URDF, but KDL does not support ...
  13. spring04:注入依赖
  14. project 2016 显示、取消任务序号
  15. php计数器归零,php计数器lt;?/*-一个简单的计数器*/functio 爱问知识人
  16. 【飞桨】Seg:U-Net【2015 MICCAI】论文研读
  17. 实验四-哈夫曼编码的MATLAB实现
  18. APP测试基本流程及APP测试要点
  19. 我母亲在一家计算机公司工作,关于母亲的作文700字5篇
  20. 视频转文字如何操作?几种方法带你了解如何视频转文字

热门文章

  1. 【css】文字垂直居中
  2. c语言上机注意事项,计算机三级(C语言)上机考试题型总结与注意事项(讲解详细)...
  3. 用jsp_servlet实现在mysql中存储图片_从数据库中读取并生成图片的Servlet
  4. cmd 调用webservice接口_c# 三种方法调用WebService接口
  5. java 快速查找 list_面试官:小伙子,你连Java集合都讲不清楚,怎么就敢开口要8K呀?...
  6. mac 上安装Homebrew
  7. java system_java System类
  8. vue脚手架 全局变量可以是变量吗_Vue.js2 全局变量的设置方法
  9. kudu大量数据更新_i2Stream提升异构数据库数据的互联互通
  10. 怎么设置电脑屏幕一直亮着_电脑屏幕出现条纹是什么原因 花屏怎么解决?