
【刷题合集】算法
文章平均质量分 58
从基础算法一步一步进阶,进击大厂!!!
花影随风_
在旅途中发现美,留下难忘回忆
展开
-
【动态规划】完全背包
【代码】【动态规划】完全背包。原创 2024-11-28 10:09:53 · 273 阅读 · 0 评论 -
【基础算法】链表
【代码】【基础算法】链表。原创 2024-11-21 19:31:31 · 386 阅读 · 0 评论 -
【基础算法】栈
【代码】【基础算法】栈。原创 2024-11-16 21:20:15 · 387 阅读 · 0 评论 -
【动态规划】回文串问题
【代码】【动态规划】回文串问题。原创 2024-09-09 14:37:51 · 244 阅读 · 0 评论 -
【动态规划】子序列问题
【代码】【动态规划】子序列问题。原创 2024-09-06 11:56:44 · 214 阅读 · 0 评论 -
【背包问题】01背包
最后一块石头的重量iipublic://我们模拟这个石头粉碎过程,//发现其实只需要把数组中的每个数添加正号或负号得到的最终结果尽可能小即可//与目标和类似,设a为正号,b为负号 |a - b|尽可能小,a + b = sum//a - b越接近绝对值才可能越小,所以a越接近sum/2结果越小//转化:从数组中选择一些数,让这些数尽可能的接近sum / 2->01背包问题i <= n;i++)j--)原创 2024-07-20 19:16:04 · 239 阅读 · 0 评论 -
【动态规划】子数组问题
【代码】【动态规划】子数组问题。原创 2024-06-27 23:31:56 · 255 阅读 · 0 评论 -
【最短路问题】bfs解决最短路问题(权为1)
【代码】【最短路问题】bfs解决最短路问题(权为1)原创 2024-05-19 14:36:38 · 591 阅读 · 0 评论 -
【Floodfill算法】dfs或者bfs解决floodfill算法
【代码】【Floodfill算法】dfs解决floodfill算法。原创 2024-05-18 21:22:16 · 373 阅读 · 1 评论 -
【BFS】队列与宽搜四小题
【代码】【BFS】队列与宽搜四小题。原创 2024-05-18 12:35:22 · 194 阅读 · 0 评论 -
【递归、回溯和剪枝】综合训练<二>
组合总和解法一:解法二: 2.字母大小写全排列字母大小写全排列 优美的排列 N皇后 有效的数独 解数独 单词搜索 黄金矿工 不同路径iii原创 2024-05-14 19:13:28 · 314 阅读 · 0 评论 -
【递归、回溯和剪枝】综合训练<一>
【代码】【递归、回溯和剪枝】综合训练刷题。原创 2024-05-13 15:21:23 · 241 阅读 · 0 评论 -
【递归、回溯和剪枝】全排列 && 子集
什么是回溯算法回溯算法是⼀种经典的递归算法,通常⽤于解决组合问题、排列问题和搜索问题等。回溯算法的基本思想:从⼀个初始状态开始,按照⼀定的规则向前搜索,当搜索到某个状态⽆法前进时,回退到前⼀个状态,再按照其他的规则搜索。回溯算法在搜索过程中维护⼀个状态树,通过遍历状态树来实现对所有可能解的搜索。回溯算法的核⼼思想:“试错”,即在搜索过程中不断地做出选择,如果选择正确,则继续向前搜索;否则,回退到上⼀个状态,重新做出选择。回溯算法通常⽤于解决具有多个解,且每个解都需要搜索才能找到的问题。原创 2024-05-12 21:26:23 · 313 阅读 · 0 评论 -
【动态规划】简单多状态dp问题
与 买卖股票的最佳时机iii是完全类似的只需要把j次变为k次就可。原创 2024-05-12 15:30:01 · 283 阅读 · 0 评论 -
【递归、回溯和剪枝】二叉树中的深搜
⼆叉树中的深搜,是我们树或者图这样的数据结构中常⽤的⼀种遍历算法。这个算法会尽可能深的搜索树或者图的分⽀,直到⼀条路径上的所有节点都被遍历完毕,然后再回溯到上⼀层,继续找⼀条路遍历。在⼆叉树中,常⻅的深度优先遍历为:前序遍历、中序遍历以及后序遍历。因为树的定义本⾝就是递归定义,因此采⽤递归的⽅法去实现树的三种遍历不仅容易理解⽽且代码很简洁。并且前中后序三种遍历的唯⼀区别就是访问根节点的时机不同,在做题的时候,选择⼀个适当的遍历顺序,对于算法的理解是⾮常有帮助的。原创 2024-05-09 19:25:02 · 469 阅读 · 0 评论 -
【递归回溯剪枝】递归
思路:递归,找相同子问题。原创 2024-05-07 22:11:48 · 307 阅读 · 0 评论 -
【动态规划】路径问题
思路:状态表示状态转移方程。原创 2024-05-06 22:15:11 · 353 阅读 · 2 评论 -
【基础算法】字符串专题
思路:解法一:两两比较求出公共前缀解法二:统一比较。原创 2024-05-06 20:26:21 · 301 阅读 · 0 评论 -
【动态规划】斐波那契数列模型
思路:简单的线性动态规划1.确定状态表示经验 + 题目要求本题为,以i位置为结尾,这个位置的泰波那契数是多少2.写出状态转移方程3.细节问题a.初始化b.填表顺序c.返回值。原创 2024-05-05 22:27:04 · 381 阅读 · 0 评论 -
【基础算法】模拟
如果差值大于等于duration,则说明中毒要持续duration妙。从a-z依次尝试替换?是否满足题意,第一个满足的就可break掉。如果差值小于duration,则说明中毒要持续两者的差值。计算两个相邻时间的差值。原创 2024-05-03 15:49:12 · 371 阅读 · 1 评论 -
【基础算法】位运算
:有0就是0|:有1就是1^:相同为0,相异为1/无进位相加。原创 2024-04-30 22:55:49 · 704 阅读 · 0 评论 -
【基础算法】前缀和
思路:板子题,思路前缀和数组记录。虽是板子,但以后切记不要死记模版。主要要开long long,防溢出。原创 2024-04-29 22:00:01 · 407 阅读 · 0 评论 -
【基础算法】二分查找
在排序数组中查找元素的第一个和最后一个位置思路:二分左端点和二分右端点模版题public:// 处理边界情况// 记录开始位置// 二分左端点// 判断结果是否成立= target)else// 更新right位置// 二分右端点。原创 2024-04-29 16:08:25 · 469 阅读 · 0 评论 -
【基础算法】滑动窗口
思路:滑动窗口四步-》1.进窗口2.判断3.出窗口4.更新结果-》这个更新结果的位置就题而定。原创 2024-04-24 09:22:50 · 357 阅读 · 1 评论 -
【基础算法】双指针
思路:利用双指针算法cur:从左往右扫描数组,遍历数组dest:处理好的区间包括destdest初始化为-1,因为刚开始dest前应该没有非零元素。即将非零元素移到dest之前即可。原创 2024-04-23 11:17:30 · 535 阅读 · 4 评论