二分查找
1. > 二分查找
面试过程竟然卡到之前做过的一道题,没有深入思考过二分的边界问题!网上找了其他回答和模板,又刷了几道题,屡试不爽。
写法一——记录答案法
while (l<=r)
{
int mid=(l+r)/2;
if (check(mid))
{
ans=mid;
r=mid-1;
}
else l=mid+1;
}printf("%d",ans);写法二——不记录法
while (l<r)
{
int mid=(l+r)/2;
if (check(mid)) r=mid
else l=mid+1;
}
printf("%d",l); //r也可以leetcode原题
格力公司福利 356人发布