算法基础教程
文章平均质量分 93
⭐本系列文章旨在复习算法刷题中常用的基础算法与数据结构,配以详细的图例解释,总结相应的代码模板,同时结合例题以达到最佳的学习效果。本专栏面向算法零基础但有一定的C++基础的学习者。
timerring
知行合一
展开
-
并查集详解及应用
并查集优化方法例题:合并集合code例题:连通块中点的数量code模板总结例题:食物链基本分析code原创 2023-06-13 13:53:19 · 795 阅读 · 1 评论 -
Trie树模板与应用
Trie树(字典树)基本思想例题 Trie字符串统计code关于idx的理解模板总结应用 最大异或对分析原创 2023-06-11 19:03:51 · 673 阅读 · 0 评论 -
KMP算法详解
KMP算法详解原创 2023-06-05 13:47:17 · 459 阅读 · 0 评论 -
单调队列算法模板及应用
单调队列算法模板及应用原创 2023-05-14 13:25:11 · 196 阅读 · 1 评论 -
单调栈模板总结及应用
单调栈模板栈算法模板例题:单调栈基本思路code原创 2023-05-13 10:55:44 · 257 阅读 · 0 评论 -
单链表图解及模板总结
静态链表如果说用结构体+指针的方式实现链表和栈的话,每次需要new一个新节点,非常慢。笔试题链表大小在10万级别,因此笔试题一般不会采用这种动态链表的方式。通常采用数组模拟链表的方式,这种方式更快。struct Node{ int val; Node *next;};new Node();链表与邻接表邻接表邻接表的head[i]存储的是节点i所有的临边。实际上就是一个单链表。用数组模拟单链表单链表里常用的是邻接表。邻接表主要用来存储图和数。双链表常用来优化某些问题。链表的原创 2022-11-24 09:44:13 · 3050 阅读 · 30 评论 -
区间合并算法及模板应用
区间合并基本思想将多个区间进行合并,其中有交集的区间合为一个区间,没有交集的区间保留原状。注意,这里端点重合也算作一种交集区间。算法的图解如下:原创 2022-11-23 10:21:22 · 1602 阅读 · 26 评论 -
离散化及模板详解
离散化基本思想算法思路模板例题:区间和题目分析code原创 2022-11-15 09:52:40 · 1746 阅读 · 35 评论 -
双指针算法及模板应用
双指针算法举例:分行输出字符串基本思路:采用双指针算法模板应用最长连续不重复子序列双指针算法模板:双指针基本思路:代码数组元素的目标和判断子序列原创 2022-10-18 09:12:44 · 6046 阅读 · 44 评论 -
差分算法及模板详解
文章目录差分一维差分例题:差分代码模板二维差分例题:差分矩阵代码模板差分一维差分差分思想和前缀和是相反的。首先我们先定义数组a, 其中a[1],a[2]…a[n]作为前缀和。然后构造数组b,b[1],b[2]…b[n]为差分数组。其中通过差分数组的前缀和来表示a数组,即a[n] = b[1] + b[2]+…+b[n]。一维差分数组的构造也很简单,即a原创 2022-10-11 11:19:26 · 17944 阅读 · 46 评论 -
前缀和算法及模板详解
前缀和一维前缀和例题:前缀和代码模板二维前缀和例题:子矩阵的和代码模板原创 2022-09-24 18:28:23 · 22958 阅读 · 56 评论 -
算法基础:二分图解及代码模板
二分法整数二分二分步骤例题:数的范围代码模板浮点数二分例题:开平方代码模板原创 2022-09-22 09:36:58 · 26755 阅读 · 37 评论 -
高精度算法详解
高精度算法详解高精度加法大整数的存储计算过程例题:高精度加法算法模板高精度减法计算过程例题:高精度减法算法模板高精度乘法计算过程例题:高精度乘法算法模板高精度除法计算过程例题:高精度除法算法模板原创 2022-09-15 10:49:22 · 29714 阅读 · 61 评论 -
算法基础(一)| 快速排序和归并排序详解
快速排序算法详解不稳定,基于分治思想。期望复杂度:nlogn,最坏 确定分界点常用分界点:取左边界q[l],取中间值q[(1+r)/2],取右边界q[r],随机值。调整区间保证左边数都小于等于x,右边数大于等于x即可。原创 2022-09-11 10:00:16 · 29720 阅读 · 42 评论