Java二分查找方法怎么使用
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章主要讲解了"Java二分查找方法怎么使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Java二分查找方法怎么使用"吧!题目采用二分查找法查找
千家信息网最后更新 2025年12月01日Java二分查找方法怎么使用
这篇文章主要讲解了"Java二分查找方法怎么使用",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Java二分查找方法怎么使用"吧!
题目
采用二分查找法查找特定关键字的元素。要求用户输入数组长度,也就是有序表的数据长度,并输入数组元素和查找的关键字。程序输出查找成功与否,以及成功时关键字在数组中的位置。例如,在有序表11、13、18、28、39、56、69、89、98、122中查找关键字为89的元素。
1、程序分析
二分查找就是折半查找,其基本思想是:首先选取表中间位置的记录,将其关键字与给定关键字key进行比较,若相等,则查找成功;若key值比该关键值大,则要找的元素一定在右子表中,则继续对右子表进行折半查找;若key值比该关键值小,则要找的元素一定在左子表中,继续对左子表进行折半查找。如此递推,直到查找成功或查找失败(查找范围为0)。
2、程序实现
/****************************************************** * Topic : 采用二分查找法查找特定关键字的元素。 * File Name: BinarySearch.c * Author : Jack Cui * Created : 6 April 2016 * ****************************************************/#include#include /*归并排序函数声明*/void BinarySearch(int iKey,int *pArr,int iNum);void main(void){int i,iKey,*pArr,iNum; printf("请输入数组的长度:\n"); scanf("%d",&iNum); printf("请输入数组元素:\n"); pArr = (int *)malloc(sizeof(int) *iNum);for(i = 0;i < iNum;i++) scanf("%d",&pArr[i]); printf("请输入你想查找的元素:\n"); scanf("%d",&iKey); BinarySearch(iKey,pArr,iNum);}/***********************************函数名称:BinarySearch*参数说明:iKey 要查找的数* *pArr 数组* iNum 数组大小*说明: 二分查找***********************************/void BinarySearch(int iKey,int *pArr,int iNum){int iLeft,iRight,iMid,iCount,iFlag; iCount = 0; //记录查找次数iFlag = 0; //查找正确标志位iLeft = 0; //左侧最小值iRight = iNum - 1; //右侧最大值while(iLeft <= iRight) //范围正确的时候,进行查询。{ iCount++; //查找次数+1iMid = (iLeft + iRight) / 2; //二分if(iKey < pArr[iMid]) iRight = iMid - 1;else if(iKey > pArr[iMid]) iLeft = iMid + 1;else if(iKey == pArr[iMid]) { printf("查找成功!\n查找%d次!pArr[%d]=%d\n",iCount,iMid,iKey); iFlag = 1;break; } }if(iFlag == 0) printf("查找失败!\n");}
3、结果显示
感谢各位的阅读,以上就是"Java二分查找方法怎么使用"的内容了,经过本文的学习后,相信大家对Java二分查找方法怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
关键
元素
关键字
数组
成功
输入
方法
程序
长度
学习
有序
位置
内容
函数
就是
次数
范围
最大
最小
也就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
国网网络安全培训通讯稿
手机游戏连接不上服务器什么原因
国 网络技术
服务器支持多少个USB端口
汽车标定与软件开发流程
经济技术开发区彩湖网络技术
数据库和idea是怎样连接的
网络安全包括那两大类
四川电商软件开发哪家可靠
数据库使用什么数据结构存储
互联网公司网络安全分级
战地1 服务器在哪
linux 隐藏行数据库
软件开发数据库招工吗
吴忠软件开发网上价格
南充软件开发报价
一个软件开发环境包括什么
滨湖区项目软件开发代理品牌
定位系统管理服务器
天网互联网科技
华为手机云服务器是什么
去日本做软件开发加班严重吗
ntp时间同步服务器ip地址
共享数据库英语翻译
关于开展全市网络安全检查
闲置服务器拿来干啥好
学生会网络技术部发展方向
网络安全法利好还是利空
数据库表结构图片
网络安全产业规模