Java分块查找方法怎么使用
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,本篇内容介绍了"Java分块查找方法怎么使用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!题目 采用
千家信息网最后更新 2025年12月03日Java分块查找方法怎么使用
本篇内容介绍了"Java分块查找方法怎么使用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
题目 采用分块查找的方法查找有序表,有序表个数为15,要求用户输入有序表各元素,程序输出查找结果,若成功,显示出元素在有序表中的位置。
1、程序分析
step1先选取各块中的最大关键字构成一个索引表;
step2查找分为两个部分:先对索引表进行二分查找或顺序查找,以确定待查记录在哪一块中;然后,在已确定的块中用顺序法进行查找。
2、程序实现
/*声明分块查找函数*/int block_search(int iKey,int iArr[]);/*定义块的结构体*/struct index{int iKey; //关键字int iStart; //起始位置int iEnd; //结束位置}index_table[4]; //结构体数组/***********************************函数名称:block_search*参数说明:iKey 查询的关键字* iArr 有序数列保存的数组*说明: 分块查找***********************************/int block_search(int iKey,int iArr[]){int i = 1,j;while((i < 4) && (iKey > index_table[i].iKey)) //确定要查找的元素在哪个块里{ i++; }if(i > 3) //当大于最大块数的时候表明没有查找到,返回0{return 0; }else{ j = index_table[i].iStart; //j为块范围的起始位置while((j <= index_table[i].iEnd) && (iArr[j] != iKey)) { j++; }if(j > index_table[i].iEnd) //超出块的范围{return 0; }return j; }}void main(void){int i,j = 0,iRet,iKey,iArr[16]; printf("请输入15个有序数:");for(i = 1;i < 16;i++) scanf("%d",&iArr[i]);for(i = 0;i < 3;i++) { index_table[i].iStart = j + 1; //确定每个块范围的起始位置j = j + 1; index_table[i].iEnd = j + 4; //确定每个块范围的结束位置j = j + 4; index_table[i].iKey = iArr[j]; //确定每个块范围的元素最大值} printf("请输入您要查询的数字:"); scanf("%d",&iKey); iRet = block_search(iKey,iArr);if(iRet != 0) printf("查找成功,其位置是:%d\n",iRet);elseprintf("查找失败!\n");}
3、显示结果
"Java分块查找方法怎么使用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
位置
有序
范围
元素
方法
最大
关键
关键字
程序
起始
输入
成功
内容
函数
数组
更多
知识
索引
结构
结果
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
广电网络技术岗面试题
软件开发团队能力介绍
互联网科技大会2016
网络安全巡回赛是什么
数据库续航测评
创建数据库字符集怎么选
甘孜州网络安全教育
保定软件开发操作
冀州网络安全态势感知装置
电脑软件开发论坛
电脑编程自学教程数据库
密信建立服务器
软件开发者大会闭幕式
03944网络技术基础真题
泉州天气预报软件开发
镇海一站式软件开发项目管理
卓健科技互联网医院第三期
关于网络安全优美的句子
阿里云专有网络安全组
合肥市公安局网络安全中心
云腾网络技术有限公司
服务器驱动怎么安装比较安全
数据库的job
2017互联网科技热词
做app的数据库要什么技术
中国网络安全法第五十八条
服务器怎么启动服务
泉州天气预报软件开发
一台服务器能做几个云桌面
服务器直接访问授权页