【算法】【查找】二分法 Bisection
2024-09-01 05:48:15
#include<stdio.h> int main(){
int a[]={,,,,,,,,,,,,,,};
int l=sizeof(a)/; //长度
int x=; //要查找到的值 int Bisection(int x,int* a,int l);
Bisection(x,a,l); return ;
} int Bisection(int x,int* a,int l){
int address; //查找的数的位置
//先考虑两端的位置
if(x==a[l-]){
address=l-;
printf("%d\n",address);
return address;
}else if(x==a[]){
address=;
printf("%d\n",address);
return address;
}
//如果不在两端
address=l/;
l=l/;
while(true){
if(x==a[address]){
printf("%d\n",address);
break;
}else if(x>a[address]){
l=l/;
address=address+l;
}else if(x<a[address]){
l=l/;
address=address-l;
}
if(l==){
//如果l=0了表示找不到
printf("not found");
break;
}
}
return address;
}
最新文章
- 笔记 - 本地拦截genymotion或者Android模拟器的网络请求
- IIS报错 未将对象引用设置到对象的实例。
- ‘初始化锁相环INIT_PLL()’
- 【转】ubuntu 编码 UTF-8 GBK GB18030
- android 的开源输入法介绍,及 自动触摸的实现方法
- Set笔记
- extjs.net 按钮执行并显示Mask代码
- 【2017-03-02】C#函数,递归法
- ML: 聚类算法R包-层次聚类
- android 开发 在一个工具类(或者适配器class)里启动activity
- 教程 | Kaggle网站流量预测任务第一名解决方案:从模型到代码详解时序预测
- std::bind 详解及参数解析
- (原)一句mpAudioPolicy->;get_input引发的血案
- linux测试带宽命令,Linux服务器网络带宽测试iperf
- 关于android R.layout 中找不到已存在的布局文件问题的解决
- #leetcode刷题之路49-字母异位词分组
- 一款基于jquery的侧边栏导航
- angular -- post请求该如何使用?
- django入门--django-blog-zinnia搭建个人博客
- Python 爬虫笔记(三)
热门文章
- C++ 洛谷 P2704 [NOI2001]炮兵阵地
- C#语言注释详解
- QUIC
- 数据结构丨N叉树
- Netty-Channel架构体系源码解读
- 【bfs】单向公路-C++
- ADO.NET_包括DataReader和dataSet的使用
- [记录]Nginx配置实现&;&;和||的方法实例
- 调用另一个进程,createprocess返回值正确,但被调进程连入口函数都没进入。
- C#3.0新增功能05 分部方法