0
点赞
收藏
分享

微信扫一扫

【BUG 弹药库】二分模板的优化

RockYoungTalk 2024-03-15 阅读 8

文章目录

1. 为什么要优化二分算法?

2. 如何去优化原来的二分模板?

  • 优化后的代码模板如下:
int l = -1, r = n;		// 注意:将二分查找的下标控制在 [0, n-1]

while (l + 1 != r)
{
		int mid = (l + r) / 2;
		
		if (IsBlue(mid))		// IsBlue()该函数根据具体逻辑进行编写
			l = mid;
		else 
			r = mid;
}
	// 具体返回 l 还是 r 根据你的蓝红边界的划分来确定
	return l or r;

3. 案例分析

  • 实际的举例:
    在这里插入图片描述

  • 二分模板的流程
    在这里插入图片描述
举报

相关推荐

0 条评论