一些算法小记录 这篇博客介绍了同余定理和费马小定理。同余定理定义了两个整数对模m同余的条件,并说明了其在取模运算中的应用。费马小定理则阐述了整数a与素数p的关系,展示了如何利用该定理快速计算大数幂的模运算,并通过具体例子演示了计算过程。 2024-07-30 #leetcode
完结撒花 一位博主分享了参加b站随想录算法刷题活动的经历,表示集体学习氛围帮助自己坚持完成了两个月的刷题任务。虽然过程中遇到偷懒、遗忘等困难,但通过持续练习和复习获得了进步。博主认识到规律坚持的重要性,计划继续刷题并反复巩固已学内容。 2024-07-27 #leetcode
leetcode_day64 博客文章介绍了两种算法:Floyd算法用于计算公司分部关闭方案的最短路径问题,通过枚举子集和动态规划验证合法性;A*算法则解决象棋中骑士最短路径问题,利用启发式搜索结合优先队列优化路径查找。两篇均附有详细代码实现和思路解析。 2024-07-25 #leetcode
leetcode_day63 该博客介绍了SPFA算法在三种不同场景下的应用:无负权回路的最短路径计算、含负权回路的检测与处理,以及带有限制条件的单源最短路径问题。文章分别给出了每种情况的问题描述、解决思路和对应的C++代码实现,重点讲解了SPFA算法通过队列优化Bellman-Ford算法的原理,以及在处理负权回路和路径限制时的特殊处理技巧。 2024-07-25 #leetcode
leetcode_day62 该博客介绍了两种图论最短路径算法:Dijkstra堆优化版和Bellman-Ford算法。Dijkstra部分通过优先队列优化实现单源正权图最短路径,适用于科学家参加会议的最优路线问题;Bellman-Ford部分则处理含负权边的单源最短路问题,通过松弛操作求解城市间最低运输成本,特别说明了负权边的处理方式。两篇均包含问题描述、解题思路和完整代码实现。 2024-07-23 #leetcode
leetcode_day61 该博客分享了两道算法题的解题思路和代码实现。第一篇讲解了拓扑排序在软件构建依赖关系中的应用,通过寻找入度为0的节点来确定处理顺序;第二篇介绍了Dijkstra算法求解单源最短路径问题,用于计算科学大会参会的最优路线。两篇文章都包含详细的代码示例和解题过程中的关键点分析。 2024-07-22 #leetcode
leetcode_day59 该博客介绍了两个算法题目:寻宝问题和石头分散问题。寻宝问题使用Prim和Kruskal算法求最小生成树,分别通过节点扩展和边扩展实现。石头分散问题则通过收集网格中多余和缺少石头的位置,计算曼哈顿距离矩阵后,采用回溯法寻找最优分配方案。两题均提供了详细思路和完整代码实现。 2024-07-20 #leetcode
leetcode_day58 该博客讨论了两道关于冗余连接的图论问题。第一篇讲解无向图中如何找到冗余边使其成为树,使用并查集解决。第二篇处理有向图中的冗余边问题,指出个人错误思路并提供了正确解法,强调需要同时处理环和入度问题。两篇文章都提供了详细的代码实现和思路分析。 2024-07-19 #leetcode
leetcode_day57 该博客分享了两道关于并查集应用的算法题解。第一题是判断无向图中节点间是否存在路径的模板题,通过构建并查集判断源节点和目标节点是否连通。第二题是LeetCode 721账户合并问题,通过给邮箱编号建立并查集,合并具有相同邮箱的账户,最终按格式输出合并后的账户信息。两题都展示了并查集在解决连通性问题中的高效性。 2024-07-18 #leetcode
leetcode_day56 该博客分享了三个算法题解:1) 字符串接龙问题通过BFS寻找最短转换序列;2) 有向图完全可达性问题采用类似BFS的边融合方法判断可达性;3) 岛屿周长问题通过统计陆地块和相邻边计算周长。每道题都提供了详细思路和C++实现代码。 2024-07-17 #leetcode