杂乱笔记
文章平均质量分 77
HeaoDng144
这个作者很懒,什么都没留下…
展开
-
【杂乱算法】前缀和与差分
、、原创 2024-08-19 21:04:37 · 363 阅读 · 0 评论 -
【杂乱算法】七种常见的排序
基数排序是一种非比较型整数排序算法,通过从最低有效位到最高有效位的顺序,对整数的每一位进行分配和收集,最终实现对整数序列的排序。从第二个元素开始, 将每个元素插入到已排序的前面部分的合适位置, 通过不断交换相邻元素实现插入.(找到第一个小于它的数。选择一个基准元素,将数组分为小于和大于基准的两个部分,递归地对这两个部分进行排序,从而实现整体有序。(img-rRxHo7Jy-1724056762931)]每次从未排序部分选择最小元素放到已排序部分的末尾。空间复杂度:O(1)原创 2024-08-19 16:42:13 · 673 阅读 · 0 评论 -
【杂乱笔记】Kmp字符串匹配算法
数组计算中,如果遇到当前字符与前缀字符不匹配的情况,那么就需要重新在前面遍历的内容中寻找次长的。),之后再与当前字符进行匹配(下一次while循环中的。),如果还是匹配不上,那么就再再去之前的。中重新匹配,结果发现还是不匹配并且。时,我们当前的最长前后缀为。,我们相当于是去第一个。原创 2024-08-19 14:05:23 · 481 阅读 · 0 评论 -
【杂乱算法】哈希
哈希函数是将任意大小的数据映射到固定大小的数据(通常是一个整数)的函数。这个固定大小的数据称为哈希值或哈希码。一致性:相同的输入总是产生相同的哈希值。高效性:计算哈希值的过程应该快速。均匀分布:哈希值应该尽可能均匀地分布在可能的哈希值范围内,以减少冲突。原创 2024-08-19 13:46:40 · 802 阅读 · 0 评论 -
【杂乱笔记】图论
*邻接矩阵:**如果图有N个节点,那么矩阵的维度为N×N,矩阵中的每个元素Ai] [j] 表示节点i和节点j之间是否存在边。NOTE]邻接矩阵适用于稠密图**邻接表:**在邻接表表示法中,每个节点都有一个列表,该列表存储与该节点直接相连的所有节点。NOTE]邻接表适用于稀疏图遍历方式:DFS(深度优先搜索):从一个选定的节点开始,沿着每一条分支尽可能深入地探索,直到不能继续为止,然后回溯到上一个节点继续探索其他未访问的分支。1、确认递归函数,参数。原创 2024-08-16 18:21:24 · 839 阅读 · 0 评论 -
【杂乱笔记】从回溯算法到动态规划
回溯()被讨论为一种通用的算法技术,用于通过探索所有可能的解决方案来解决问题,并在发现它们无法导致有效的解决方案时立即放弃它们。具体来说,回溯算法与DFS(深度优先遍历)非常相像都是通过递归探索所有的解决方案。时间复杂度均是指数级。DFS是在遍历【节点】回溯是在遍历【树枝】这导致在某些情况下DFS可以转换为回溯,回溯是DFS优化版。回溯法解决的问题都可以抽象为树形结构,是的,我指的是所有回溯法的问题都可以抽象为树形结构!因为回溯法解决的都是在集合中递归查找子集,原创 2024-08-13 22:33:51 · 884 阅读 · 3 评论 -
【杂乱笔记】滑动窗口算法
滑动窗口是一种高效的算法技术,适用于处理连续子序列的问题。通过动态调整窗口的边界,可以显著提高算法的性能,通常将时间复杂度降低到 (O(n))。原创 2024-08-07 14:16:20 · 146 阅读 · 0 评论 -
【杂乱笔记】双指针算法
双指针算法(Two Pointers)是一种常用的算法技巧,用于解决数组或链表中的问题。其主要思想是使用两个指针(或索引)来遍历数组或链表,通常一个指针从头开始,另一个指针从尾开始,或者一个指针快一些,另一个指针慢一些。双指针算法的优点是可以减少遍历次数,提高算法的效率。这些例子都使用了双指针算法来解决问题,提高了算法的效率。原创 2024-08-07 10:37:16 · 268 阅读 · 0 评论