Jarrycow的睡梦
03
24
二分查找 二分查找
二分查找,也称折半搜索、对数搜索,是用来在一个有序数组中查找某一元素的算法。 原理:二分法以在一个升序数组中查找一个数为例。 每次考察数组当前部分的中间元素 如果中间元素刚好是要找的,就结束搜索过程 如果中间元素小于所查找的值,那么左
2023-03-24
24
前缀和 & 差分 前缀和 & 差分
前缀和定义前缀和可以简单理解为「数列的前 $n$ 项的和」,是一种重要的预处理方式,能大大降低查询的时间复杂度。 二维/多维前缀和多维前缀和的普通求解方法几乎都是基于容斥原理。 基于 DP 计算高维前缀和基于容斥原理来计算高维
2023-03-24
24
贪心 贪心
贪心算法是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。 适用范围:局部最优策略能导致产生全局最优解实际上贪心算法使用的情况比较少,可以先选择该问题下的几个实际数据进行分析可以做出
2023-03-24
24
递归 & 分治 递归 & 分治
递归与分治算法的区别与结合运用 递归定义递归(英语:Recursion),在数学和计算机科学中是指在函数的定义中使用函数自身的方法,在计算机科学中还额外指一种通过重复将问题分解为同类的子问题而解决问题的方法。 引入递归的基本思想是某个函
2023-03-24
24
模拟 模拟
模拟就是用计算机来模拟题目中要求的操作。 模拟题目通常具有码量大、操作多、思路繁复的特点。由于它码量大,经常会出现难以查错的情况,如果在考试中写错是相当浪费时间的。 技巧写模拟题时,遵循以下的建议有可能会提升做题速度: 在动手写代码之
2023-03-24
23
枚举 枚举
枚举是基于已有知识来猜测答案的一种问题求解策略。 要点给出解空间建立简洁的数学模型。 枚举的时候要想清楚:可能的情况是什么?要枚举哪些要素? 减少枚举的空间枚举的范围是什么?是所有的内容都需要枚举吗? 在用枚举法解决问题的时候,一定要想
2023-03-23
3 / 13