}
/**
* 二分法查找一个整数在整型数组中的位置
*
* 算法思路:首先得到数组a的最小值和最大值的下标,分别是:low和high,接着求出值位于数组中间那个数的下标middle
*然后再将这个middle对应的数组中的数和待查找的数num进行比较,如果相等,则表示已查找到 , 如果numa[middle]
*则说明num位于a[low]和a[middle]之间,于是将a[middle - 1]设为较大值,继续求出此时对应的a[middle],
*再进行比较,其他情况可依次类推 。一直到low=high,如果此时还没有在数组a中查找到,则说明该数组a中没有值num,返回-1
*
* @param a 给定的整型数组
* @param num 待查找的数 num
*
* @return 返回整数num在数组a中的位置下标,如果未查找到则返回-1
* */
public int binarySearch(int[] a,int num){
int low = 0;
int high = a.length - 1;
while(low = high){
int middle = (low + high) / 2;
if(num == a[middle])
return middle;
else if(numa[middle])
high = middle - 1;
else
low = middle + 1;
}
return -1;
}
}
程序基本上就是这样了,其中注释中有详细的解释说明
【二分查找代码实现java 二分查找法 java】二分查找代码实现java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于二分查找法 java、二分查找代码实现java的信息别忘了在本站进行查找喔 。
推荐阅读
- 贾谊的文章公众号投稿格式,贾谊的著名论文
- 查询oracle表中的索引,Oracle表索引重建
- 模拟山羊打麻将游戏,玩模拟山羊
- u盘怎么下载电脑数据,u盘怎么下载电脑资料
- vb.net网页输入 vbnet ui
- flutter地图占用内存过高,flutter 地图
- 如何策划新媒体稿件,新媒体新闻策划
- 即时逃脱推荐游戏,及时脱逃游戏
- linux命令中f linux命令中vi编辑之后怎么退出