
算法学习
文章平均质量分 89
云辰星.
热爱技术,热爱分享
展开
-
学会了爬楼梯,还不会动态规划吗?——DP中的爬楼梯问题
动态规划作为算法题中比较重要的一章节了,同时也是比较难写的,但是找到规律之后,大部分题无非都是在经典问题上面做变形。本篇文章重点在于通过题目来理解DP,并不是从晦涩难懂的概念讲起下面,我们来看看DP中的爬楼梯问题:原创 2024-05-18 22:29:14 · 1001 阅读 · 0 评论 -
学了算法,还不会并查集吗?
并查集是一种数据结构(数据结构相信大家都知道吧)他能干什么呢?那么什么叫不相交集合呢?举例:比如一个城市有n个人,1号和3号是朋友,属于一个帮派的,5号和3号也是朋友,8号和9号是朋友,这个时候随便问你两个人,判断他们是否属于一个帮派(相互认识)如果我们使用暴力的方式去判断的话,我们需要将互相认识的人保存在不同的帮派里面,然后对任意两个人查看是否处于同一个集合里面,最坏情况达到了0(n²)这是非常不友好的,对于n = 1e6来说。原创 2024-03-21 19:03:42 · 939 阅读 · 0 评论 -
什么是状态压缩DP???
如何进行DP状态定义,这是我们首要解决的DP问题,无非就是从小问题递推到大问题,那么我们可以这样进行dp定义::代表在S集合内,到达j点的最短距离(j也在S集合内,因为每个点都需要到达)我们可以通过子集然后递推求出大集合这道题很明确,其实就是求最小值,也就是。原创 2024-03-20 22:15:07 · 1101 阅读 · 0 评论 -
蓝桥之手撕排序算法——冒泡、选择、插入、快排、归并(Python版)
排序算法是算法竞赛中的第一入门必会的算法,可能在语言里面内置好sort排序函数,但是在排序算法中的很多思想是值得我们去学习的,比如从快速排序里面学会如何进行以及的实现。原创 2024-03-18 17:45:12 · 1217 阅读 · 1 评论