⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 binsearch.cpp

📁 数据结构查找算法中的二分查找算法
💻 CPP
字号:

////
#include<stdio.h>   
    
#include "binsearch.h"

int binsearch(sqtable R,float K,float AD)//二分查找法   
{   
  int   low=0,mid,hig=R.n;//置查找区间初值
  float H;
  while(low<=hig)//区间长度不为0时继续查找   
  {   
  mid=(low+hig)/2;//找出区的中间位置 
  
  H = K-R.item[mid].key;
  if(H > 0)
  {
	  H = H;
  }
  else
  {
	  H = -H;
  }

  if(H<= AD && H >= -AD)
  {
	  return mid;//找到则返回位置MID
  }
  else if(K<R.item[mid].key)
  {
	  hig=mid-1;//缩小区间
  }
   else
   {
	   low=mid+1;//缩小区间  
   }
  }   
    return 0;   
}   

void main()
{   
  int i;
  sqtable a;   
  for(i=0;i<MAX;i++)//初始化查找表
  {
  //scanf("%d",&(a.item[i].key));
  a.item[i].key = i/(MAX - 1.0f);
  }

  for(i=0;i<MAX;i++)
	printf("Item%d is %f\n", i, a.item[i].key);
  a.n=MAX-1;   
  printf("Result is %d\n",binsearch(a,0.34,0.0101));
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -