
算法
文章平均质量分 94
通过筛选力扣题,分享各种算法解题思路,从双指针到宽度优先遍历,从递归到深度优先遍历,以及贪心和动态规划。
小皮侠
今天也要努力学习
展开
-
【算法篇】三道题理解什么是递归,回溯和剪枝
想必大家再学习算法知识的路上经常听到回溯,剪枝类似的概念,对于初学者来说,很容易把他们理解成一种新的算法思想,其实回溯和剪枝只是在递归的基础上稍加修改,对于解决某些特定问题非常有帮助,我从力扣上选了三道题,我会粘贴题目链接,并对每道题进行详细的原理分析,希望大家能坚持看完,绝对能有收获,大家有更好的思路也欢迎大家在评论区交流啊!文章顺序:题目链接=》算法原理=》代码呈现思想总结:回溯:从⼀个初始状态开始,按照⼀定的规则向前搜索,当搜索到某个状态⽆法前进时,回退到前⼀个状态,再按照其他的规则搜索。原创 2024-10-09 21:07:21 · 1188 阅读 · 2 评论 -
【算法篇】逐步理解动态规划1(斐波那契数列模型)
学过算法的应该知道,动态规划一直都是一个非常难的模块,无论是状态转移方程的定义还是dp表的填表,都非常难找到思路。在这个算法的支线专题中我会结合很多力扣题型,由简单到复杂,带大家深度剖析动态规划类的题型,欢迎大家关注啊。顺序:题目链接-》算法思路-》代码呈现。原创 2024-03-24 20:46:01 · 1502 阅读 · 14 评论 -
【算法篇】三道题理解算法思想——认识BFS
宽度优先遍历和深度优先遍历组成了大家熟悉的搜索算法,这两种算法也是蓝桥杯之类竞赛题的常考思想,正巧马上蓝桥杯临近,博主也是刷了很多BFS相关的题型,在这篇文章中会从力扣上选取三道简单的宽搜题型,带大家了解BFS的模板以及对他有个初步认识。本篇文章题目较为简单,大家可以根据第一题的模板,自己先去力扣上做题然后回来看题解,稍后我们继续更新难度更高的宽搜题目,希望大家能给个关注👍。文章顺序:题目链接-》算法思路-》代码呈现。原创 2024-04-07 21:44:25 · 733 阅读 · 3 评论 -
【算法题】三道题理解算法思想——二分查找算法
题目链接算法思路⽤的还是⼆分思想,就是根据数据的性质,在某种判断条件下将区间⼀分为⼆,然后舍去其中⼀个区间,然后再另⼀个区间内查找;为⽅便叙述,⽤x表⽰该元素,resLeft表⽰左边界,resRight表⽰右边界。寻找左边界思路:1.寻找左边界:。我们注意到以左边界划分的两个区间的特点:▪左边区间都是⼩于x的;▪右边区间(包括左边界)都是⼤于等于x的;2.因此,关于mid的落点,我们可以分为下⾯两种情况:。当我们的mid落在。原创 2024-03-30 21:00:00 · 2748 阅读 · 10 评论 -
【算法题】三道题理解算法思想--滑动窗口篇
本篇文章中会带大家从零基础到学会利用滑动窗口的思想解决算法题,我从力扣上筛选了三道题,难度由浅到深,会附上题目链接以及算法原理和解题代码,希望大家能坚持看完,绝对能有收获,大家有更好的思路也欢迎大家在评论区交流啊!欢迎大家交流!!!欢迎大家交流!!!欢迎大家交流!!!文章顺序:题目链接-》算法原理-》代码呈现思想总结:滑动窗口可以理解为是快慢双指针的一个分支,也是利用双指针一个在前一个在后,通过判断条件使两个指针形成一个大小不断变化的窗口,不断向前移动。原创 2024-03-28 22:25:06 · 789 阅读 · 4 评论 -
【算法篇】七大基于比较的排序算法精讲
根据排序算法是否基于排序,可以将算法分为两种,而在基于排序的算法中最常见的算法有七种,分别是:直接插入排序,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序。快速排序是在二叉树的前序遍历的基础上改进的一个算法,取基准值时要尽量保证左右两个区间的大小相等,这样的时间复杂度最低,在构建代码的时候我们尽量依据这一点来优化代码。:假设在待排序的序列中,有多个相同的关键字,经过排序后,这些关键字的先后顺序不发生改变,我们称这种排序算法是稳定的,否则是不稳定的。原创 2024-03-16 15:26:42 · 1704 阅读 · 17 评论 -
【算法题】从0培养算法思想——双指针篇
在这个专栏里我会收集一些很经典的算法题,并分享算法原理和题解,这里面每一道题或者带给了我新的思路,或者是代码简洁高效,或者题目在面试中出现的频率很高。我想把它们记录下来,大家有更好的思路也欢迎大家在评论区交流啊!欢迎大家交流!!!欢迎大家交流!!!欢迎大家交流!!!原创 2024-03-22 16:26:34 · 894 阅读 · 2 评论