摘要: 模板题 P3378 【模板】堆 P3367 【模板】并查集 P1177 【模板】快速排序 P3383 【模板】线性筛素数 P3370 【模板】字符串哈希 P3366 【模板】最小生成树 P1226 【模板】快速幂||取余运算 P3371 【模板】单源最短路径(弱化版) P3865 【模板】ST表 P 阅读全文
posted @ 2020-08-06 21:23 AuroraPolaris 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 2023-2024《数据结构》大作业报告 A. 岛屿链接 解题思路 将所有初始的完整海岛所包含的格子进行统一编号,并统计每个海岛的大小。 尝试将每一块海变为陆地,并用新得到的陆地的大小更新答案。 Code #include<iostream> #include<cstdio> using names 阅读全文
posted @ 2024-01-18 21:39 AuroraPolaris 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 查看原题请戳这里 突然感觉qxy和小z是同种生物莫队的一道裸题虽说莫队算是一种暴力的算法,但ta依然是某些题目的正解的。(dfs:我不服) 这道题是需要我们经过一定的数学推导才可以做出来的。具体过程如下:对于L,R的询问。 设其中颜色为x,y,z的袜子的个数为a,b,c… 那么答案即为 (a*(a- 阅读全文
posted @ 2020-08-14 15:34 AuroraPolaris 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 隔了几个月,又开始写博客了qwq kruskal时间复杂度为O(nlogn)它的算法思路是这样的:我们根据边的权值将所有边排序,然后枚举每条边,用并查集去查询这条边的两个端点是否在同一集合内,若在同一集合内,则删掉这条边,若不在同一结合则加入这条边,并将这两个端点所在的集合合并。附一下代码: 123 阅读全文
posted @ 2020-08-14 15:33 AuroraPolaris 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 有splay的标签其实用two-pointer就能轻松搞定时间复杂度为O(n)我们可以发现,将数据答案一定是数据的某两个区间的长度和。对于判断一个区间是否能够被放到一个架子上,只需要判断这个区间的首尾数据的差是否超过了k。 这里,我们可以用两个two-pointer来线性枚举区间,最后枚举这两个区间 阅读全文
posted @ 2020-08-14 15:32 AuroraPolaris 阅读(122) 评论(0) 推荐(0) 编辑
摘要: title: 线段树-学习 date: 2019-08-02 10:03:56 tags: NULL 前言:线段树是一种二叉搜索树,能通关TA实现修改、区间查询等功能……( 相信大家都懂的……)好吧,在这里,我们就来介绍线段树的单点修改、区间修改以及区间查询的方法。 单点修改,区间查询Emmmmmm 阅读全文
posted @ 2020-08-14 15:31 AuroraPolaris 阅读(117) 评论(0) 推荐(0) 编辑
摘要: ·拓扑排序是什么呢?我们先来看一下标准解释:对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序(Topol 阅读全文
posted @ 2020-08-14 15:30 AuroraPolaris 阅读(207) 评论(0) 推荐(0) 编辑
摘要: title: 树-学习 date: 2019-08-02 10:03:56 tags: NULL 树的直径定义 给定一棵树,树中每条边都有一个权值,树中两点之间的距离定义为连接两点的路径边权之和。树中最远的两个节点之间的距离被称为树的直径,连接这两点的路径被称为树的最长链。后者通常也可称为直径,即直 阅读全文
posted @ 2020-08-14 15:29 AuroraPolaris 阅读(765) 评论(0) 推荐(0) 编辑
摘要: 查看例题请戳这里 这里我们从易到难来介绍三种求逆序对数的方法。 top1:暴力枚举 时间复杂度:\(O(n^2)\) emmmmm…… 这好像真的没什么可说的…… code: for(int i = 1; i < n; i++) for(int j = i + 1; j <= n; j++) if( 阅读全文
posted @ 2020-08-14 15:27 AuroraPolaris 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 定义欧拉路径(欧拉通路):通过图中所有边的简单路。(换句话说,每条边都通过且仅通过一次)也叫”一笔画”问题。欧拉回路:闭合的欧拉路径。(即一个环,保证每条边都通过且仅通过一次)欧拉图:包含欧拉回路的图。 起源在一个图中求解一条欧拉回路的问题,起源于欧拉提出的、著名的“七桥问题”。详见百度百科。 判定 阅读全文
posted @ 2020-08-14 15:26 AuroraPolaris 阅读(387) 评论(0) 推荐(0) 编辑
摘要: ·什么是离散化?离散化,把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率。通俗的说,离散化是在不改变数据相对大小的条件下,对数据进行相应的缩小。 ·为什么要用、什么时候要用离散化呢?如果让你吧1000个1到1000的数放到桶里,那么非常简单,直接开一个大小为1000的数组,然后在里 阅读全文
posted @ 2020-08-14 15:25 AuroraPolaris 阅读(284) 评论(0) 推荐(0) 编辑