详谈二分查找(C语言)

本文详细探讨了二分查找算法的实现,通过C语言代码展示了其工作原理。欢迎读者留言交流,共同提升对二分查找的理解。
摘要由CSDN通过智能技术生成

首先,给大家介绍什么叫做二分查找(二分搜索)
二分搜索法:通过不断的缩小解可能存在的范围,从而求得问题最优解的方法。在程序设计中经常看到二分搜索和其他算法结合

下面我们将详细的介绍如何写好一个详细准确的二分查找的精准代码和相应的算法

题目1
从有序数组中查找某个值,返回该元素的下标

解析过程:例如我们给出一个有序的数组int ar[]={12,23,34,45,56,67,78,89,90},共n个元素,最基本的想法是我们取数组的中间元素ar[mid]=56与你要查找的元素x进行比较,当ar[mid]>x时,再从ar[0]-ar[mid]继续递归使用二分查找,反之,同理。

这是我们最基本的思路,那么首先我们怎么来确定这个中间元素呢??可能有人会给出这样的答案:我们首先用标记变量i,j分别指向数组的起始和末尾,那么mid=(i+j)/2,(这里是否会产生相应的问题呢?后面我将会进行作答)
相应的我们会给出最基本的代码,如下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值