
Acwing算法基础
文章平均质量分 91
Acwing算法基础相关课程
辉小歌
九局下半转啊转,我把帽子反戴,还在期待逆转。
展开
-
第一章 基础算法 【完结】
目录排序二分高精度前缀和差分二进制双指针离散化区间合并排序快速排序 快排的核心思想是分治,选一个当作哨兵让小于等于它的数都在左边,大于等于它的数都在右边时间复杂度是n(logn)步骤大致分为以下三步:确定分界点调整区间递归处理左右两段y神模板:void quick_sort(int q[], int l, int r){ if (l >= r) return;//元素个数是一个 int i = l - 1, j = r + 1, x = q[l + r &g原创 2021-04-21 17:00:44 · 413 阅读 · 1 评论 -
第二章 数据结构 【完结】
目录单链表[静态]双链表[静态]栈队列单调栈单调队列KMPTrie并查集单链表[静态]y神模板:// head存储链表头,e[]存储节点的值,ne[]存储节点的next指针,idx表示当前用到了哪个节点int head, e[N], ne[N], idx;// 初始化void init(){ head = -1; idx = 0;}// 在链表头插入一个数avoid insert(int a){ e[idx] = a, ne[idx] = head, hea原创 2021-05-09 09:47:50 · 1004 阅读 · 0 评论 -
第三章 搜索与图论 【完结】
以下总结摘自y总目录树与图的存储树与图的遍历拓扑排序朴素dijkstra算法堆优化版dijkstraBellman-Ford算法spfa 算法(队列优化的Bellman-Ford算法)spfa判断图中是否存在负环floyd算法树与图的存储树是一种特殊的图,与图的存储方式相同。对于无向图中的边ab,存储两条有向边a->b, b->a。因此我们可以只考虑有向图的存储。(1) 邻接矩阵:g[a][ b ] 存储边a->b(2) 邻接表:有向图的邻接表存储就是对于每个点 v.原创 2021-05-13 19:46:51 · 461 阅读 · 0 评论 -
第四章 数学知识【完结】
本文的所有内容模板都来自于y总目录试除法判定质数试除法分解质因数朴素筛法求素数埃氏筛法求素数线性筛法试除法求所有约数约数个数和约数之和欧几里得算法求欧拉函数筛法求欧拉函数快速幂试除法判定质数时间复杂度是根号nbool is_prime(int x){ if (x < 2) return false; for (int i = 2; i <= x / i; i ++ ) if (x % i == 0) return false;.原创 2021-05-09 09:48:24 · 246 阅读 · 0 评论 -
第五讲 动态规划
目录背包问题01背包完全背包多重背包问题分组背包问题线性DP背包问题01背包: 每件物品最多只用一次完全背包: 每件物品有无限个多重背包 : 每件物品有不同多个分组背包 : 有多个组,每组内有多个物品,每一个组内只能选一个01背包01背包问题模板题完全背包完全背包问题板子题多重背包问题多重背包板子题分组背包问题分组背包问题板子题线性DP898. 数字三角形895. 最长上升子序列897. 最长公共子序列...原创 2021-05-19 22:14:00 · 326 阅读 · 0 评论 -
第六章 贪心 【完结】
贪心类题型没有固定的模板只有多做题,总结经验。目录905. 区间选点908. 最大不相交区间数量913. 排队打水104. 货仓选址905. 区间选点https://www.acwing.com/problem/content/description/907/本题和区间合并那种题几乎一样的思路,不过还是有差别的。首先:按左端点从小到达排,这是没有悬念的必须做的。这时候分析,会有如下几种情况:情况一:这种包含的情况,我们要选小的,因为我们要的是公共部分。情况二:这种相交的情况选,.原创 2021-05-19 22:14:31 · 288 阅读 · 0 评论