#include"stdio.h"
#define MAX 256
typedef struct{
int key;
int link;
}IdxType;
int dis_max(int a[],int start,int end){
int i=0,max=0;
for(i=start;i<=end;i++){
if(a[i]>max) max=a[i];
} return max;
}
int IdxSearch(IdxType I[],int m,int a[],int n,int k){
int low=0,high=m-1,mid,i;
int b=n/m;
while(low<=high){
mid=(low+high)/2;
if(I[mid].key>=k)
high=mid-1;
else low=mid+1;
}
i=I[high+1].link;
while(i<=I[high+1].link+b-1&&a[i]!=k) i++;
if(i<=I[high+1].link+b-1)
return i;
else return -1;
}
int main(){
int n,i,a[MAX],t,l,k,m;
IdxType IDX[MAX];
printf("请输入主表的元素的个数\n");
scanf("%d",&n);
if(n>256||n<=0) {
printf("输入有误\n");
return 0;
} printf("请输入主表的元素\n");
for(i=0;i<n;i++){
scanf("%d",&t);
a[i]=t;//输入主表的元素
}
printf("请输入每块的记录数\n");
scanf("%d",&l);
k=n/l;
for(i=0;i<k;i++){
IDX[i].key=dis_max(a,4*i,4*i+l-1);
IDX[i].link=4*i;
}
printf("请输入要查询的次数\n");
scanf("%d",&m);
for(i=0;i<m;i++){
printf("请输入要查询的元素\n");
scanf("%d",&t);
if(IdxSearch(IDX,l,a,n,t)==-1) printf("查找失败\n");
else printf("查找成功\n");
}
return 1;
}
JaniceLu
- 粉丝: 98
- 资源: 1万+
最新资源
- C#源码 上位机 联合Visionpro 通用框架开发源码,已应用于多个项目,整套设备程序,可以根据需求编出来,具体Vpp功能自己编 程序包含功能 1.自动设置界面窗体个数及分布 2.照方式以命令触
- 几何物体检测42-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- 云计算全套课程资料.zip
- 基于cruise的燃料电池功率跟随仿真,按照丰田氢能源车型搭建,在wltc工况下跟随效果好,最高车速175,最大爬坡30,百公里9s均已实现 1.模型通过cruise simulink联合仿真,策略
- 材料进场验收台账样表.docx
- 建筑材料入库台账样表.docx
- 建筑材料复验台账样表.docx
- 建筑材料台账样表模板.docx
- 建筑材料送检台账样表.docx
- 建筑材料出库台帐模板.docx
- 建筑材料报验单(样表).docx
- 几何物体检测43-YOLO(v5至v9)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- 几何物体检测44-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- C++语言实例-毕业设计项目:涂格子游戏开发,图形界面交互特点-开题报告,论文,答辩PPT参考
- python语言kssp批量下载爬虫程序代码QZQ3.txt
- IP102中分离出来的害虫数据集,使用Pasical VOC XML标注
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0