首页 > 编程语言 >二分算法

二分算法

时间:2024-01-29 18:22:20浏览次数:31  
标签:二分 题目 mid 算法 答案 单调

二分算法

个人感想

洛谷二分题单基本完成,发现二分确实是比较模板的方式解答题目,难点往往是寻找出答案的单调性和如何高效验证答案的正确性。
二分个人感觉就是枚举的优化,在时间复杂度上的极大优化,有一种暴力的美.

目前发现的不足
  • 对题目的理解太浅,有时很难看懂题目的意思,理解有问题。
  • 对于涉及浮点数的判断还有非常大的进步空间(委婉的说)

二分本质

二分算法本质是二分查找,对于答案存在单调性时便可以用二分来实现快速查找,时间复杂度为

\[o(\log n) \]

  • 我们往往可以通过分析题目,发现答案具有单调性即:
    1,2,3···r r· · · · · ·L(边界)
    (可以取) (不可取)
    那么我们就可以写下二分板子:
    int l=1;r=L;
    while(l<=r){//如果是小数可以用r-l>=1e-4表示
    int mid=(l+r)/2;
    	if(check){
    		r=mid-1;
    	}else{
    		l=mid+1;
    	}
    }
    
    这便是对答案的寻找,接下来就是通过题目来写下check函数来验证答案的正确性并记录答案即可.

标签:二分,题目,mid,算法,答案,单调
From: https://www.cnblogs.com/sdlypsck/p/17995084

相关文章

  • 视频汇聚平台智能边缘分析一体机算法分析人员吸烟告警
    在这个科技日新月异的时代,安全和健康已经成为了我们生活中不可忽视的话题。而在众多安全防范措施中,智能边缘分析一体机的出现,无疑为我们的生命财产安全增添了一份强有力的保障。今天,我要讲述的是一个关于智慧与安全的故事,它发生在智能边缘分析一体机算法分析平台上,一个能够精准检测......
  • 视频汇聚平台智能边缘分析一体机算法分析人员吸烟告警
    在这个科技日新月异的时代,安全和健康已经成为了我们生活中不可忽视的话题。而在众多安全防范措施中,智能边缘分析一体机的出现,无疑为我们的生命财产安全增添了一份强有力的保障。今天,我要讲述的是一个关于智慧与安全的故事,它发生在智能边缘分析一体机算法分析平台上,一个能够精准检......
  • 安防视频监控平台LntonAIServer视频算法分析平台算法检测明烟明火预警
    今天,我要讲述的是一个关于智慧与安全的故事,它发生在LntonAIServer视频算法分析平台上,一个能够精准检测明烟和明火预警的高科技平台。想象一下,当夜幕降临,城市的喧嚣渐渐平息,大多数人沉浸在甜美的梦乡时,LntonAIServer却在无声中坚守着它的岗位。它的眼睛不眨不闭,通过高......
  • Rabbit加密算法:保护数据隐私的新选择
    摘要:数据安全是当今信息时代的关键问题之一。为了保护敏感数据免受未经授权的访问和窃取,加密算法起到了至关重要的作用。本文将介绍Rabbit加密算法的优缺点,以及它如何解决现代加密中的一些问题。本文还将提供一个使用Java编写的完整示例,以帮助读者深入了解Rabbit加密算法的实......
  • 【学习笔记】二分图
    1.定义一个二分图满足有一种划分方案使得它节点的被分为两部分,且所有边的端点所在的部分不相同。即每条边都连接两个部分。变量说明:没有特殊说明时,\(n\)表示a部分点数,\(m\)表示b部分点数,\(e\)表示边数。2.判定显然我们给二分图染色,确定一个点所有点都确定。如果在染的......
  • java中二分查找前提必须是升序吗?
    二分查找不必须是升序,降序排列的数组也可以执行二分查找。二分查找算法是一种高效的搜索方法,它要求数据集是有序的,无论是升序还是降序都可以。在升序排列的情况下,算法会将目标值与中间值比较,如果目标值较小,则在左半部分继续查找;如果目标值较大,则在右半部分继续查找。在降序排列的......
  • 算法模板 v1.4.2.20240129
    算法模板v1.1.1.20240115:之前的历史版本已经不可寻,创建了第一份算法模板。v1.2.1.20240116:删除“编译”-“手动开栈”与“编译”-“手动开O优化”;将“编译”-“CF模板”中的第20行代码cin>>T;注释;删除“读写”及其目录下的内容;删除“图论”-“欧拉图”-“混合图”;删除“图论”-......
  • 遗传算法(Genetic Algorithm)
    算法简介遗传算法(GeneticAlgorithm,GA)是一种基于自然选择和遗传操作的随机全局搜索优化算法。它通过模拟自然选择和遗传中发生的复制、交叉(crossover)和变异(mutation)等现象,从任一初始种群(父代)开始,通过随机选择、交叉和变异操作,产生更具有生存优势的子代,使群体不断向搜索空间最......
  • 【算法】004_链表
    哈希表哈希表增删改查是常数时间,但是这个常数时间比较大放入哈希表的东西,如果是基础类型,内部按值传递,内存占用就是这个东西的大小放入哈希表的东西,如果不是基础类型,内部按引用传递,内存占用就是这个东西的内存地址的大小有序表有序表的增删改查是O(logn)级别的放入有序表......
  • RL5 PPO算法
    PPO算法算法是一类典型的算法,既适用于连续动作空间,也适用于离散动作空间。算法是一种基于策略梯度的强化学习算法,由的研究人员等人在年提出。算法的主要思想是通过在策略梯度的优化过程中引入一个重要性权重来限制策略更新的幅度,从而提高算法的稳定性和收敛性。算法......