package com.sxt.arraytest2;
/*
* 二分查找 前提:有序
*/
public class TestBinarySearch {
public static void main(String[] args) {
//待查找序列
int[] arr = {1,3,5,7,9,13};
//待查目标
int ele = 13;
BSearch(arr,ele); } private static void BSearch(int[] arr, int ele) {
//若存在存入index 否则index为初始值-1
int index = -1;
//开始的下标
int start = 0;
//结束的下标
int end = arr.length-1;
while(start <= end){//循环条件
int mid = (start + end)/2;
if(arr[mid] == ele){
index = mid;
break;//若找到 跳出循环!!
}else if(arr[mid] > ele){
end = mid - 1;
}else{
start = mid + 1;
}
}
if(index == -1){
System.out.println("不存在元素"+ele);
}else{
System.out.println("该元素的下标:"+index);
}
}
}

最新文章

  1. 创建自己的Vagrant box
  2. storyboard传值方式
  3. 【leetcode❤python】 303. Range Sum Query - Immutable
  4. yum常用命令
  5. 416. Partition Equal Subset Sum
  6. WORD2007多级列表
  7. (2) 深入理解Java Class文件格式(一)
  8. Shipyard远程API
  9. 警惕VPS服务商常用的超售手段
  10. php页面显示空白
  11. INSTALL_FAILED_NO_MATCHING_ABIS
  12. Notepad++ V6.9.0 中文绿色便携版
  13. 学习vi(1)
  14. Scala_特质
  15. 【CF1077F2】Pictures with Kittens 单调队列+dp
  16. Codeforces.786B.Legacy(线段树优化建图 最短路Dijkstra)
  17. OpenCV---分水岭算法
  18. Qt 等待一段时间例如1s
  19. Silverlight &amp; Blend动画设计系列十三:三角函数(Trigonometry)动画之飘落的雪花(Falling Snow)
  20. hibernate级联查询映射的两种方式

热门文章

  1. (5)连续非周期信号的傅里叶变换(频谱) &amp; 周期信号的傅里叶变换
  2. 配置android studio环境
  3. WPF学习笔记-用Expression Blend制作自定义按钮
  4. SpringBoot-(10)配置虚拟路径-指定外部路径文件夹存取文件
  5. python类相关总结(持续更新)
  6. 【springmvc学习】常用注解总结
  7. linux 下 nginx 的最大文件打开设置
  8. 关于网上大量对Vue双向绑定的错误理解
  9. CSS利用filter/opacity实现背景透明
  10. linux设置变量的三种方法