自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 tarjan求强连通分量

tarjan算法的实现方式 作为一个只进行一次dfs就能找到环并且成功缩点的算法来说,tarjan的dfs还是比较强大的,那么它又具体是怎么实现的呢? 首先,我们需要明白一个时间戳的概念。命名一个记录时间点的变量idx,每dfs找到一个点,就将该点的时间戳赋值为时间节点idx,然后用idx++来模拟“时间流逝”,这样就可以记录下每一个节点被遍历到的次序了。...

2019-08-09 22:48:11 190

原创 RMQ倍增,附赠有趣小故事一发

RMQ-range minimum queryRMQ是一种在线的算法,用来求一个给定区间的最小值,其中预处理的时间复杂度是O(nlogn),而处理每次询问的时间复杂度是O(1)。所以,在问题特别多的时候,RMQ是处理大量询问的不二之选。对于这个算法的实现,需要用到倍增和st表(线段树)的思想。emm,话不多说,先讲小故事吧:在一个遥远的地方,有一片广袤的大森林,这个森林中生活着许许多多的小...

2019-08-06 19:09:51 274

原创 双端队列排序--解题报告

双端队列排序discriptionSherry现在碰到了一个棘手的问题,有N个整数需要排序。 Sherry手头能用的工具就是若干个双端队列。 她需要依次处理这N个数,对于每个数,Sherry能做以下两件事: 1.新建一个双端队列,并将当前数作为这个队列中的唯一的数; 2.将当前数放入已有的队列的头之前或者尾之后。 对所有的数处理完成之后,Sherry将这些队列排序后就可以得到一个非降的序列。...

2019-07-18 21:24:00 1824

原创 stl:deque

STL :deque的使用方法作为一种依靠链表实现的容器,deque(读音是不是和‘dick’相同)是一种能够实现元素的快速插入和随机访问的容器类函数。它和vector基本相同(在用法上),但是一个vector没有的==push_front()==造就了它们决定性的不同。deque的成员函数。deque<elem> a;创建一个空的dequedeque<Elem> ...

2019-07-17 21:17:28 219 1

原创 动态规划笔记

以状态和DAG的观点,重新看待动态规划动态规划类比“子问题” = 状态;全部子问题 = 状态空间;递推关系 = 状态转移方程;子问题 = 点;递推关系 = 边;矩阵快速幂优化动态方程求解...

2024-07-12 14:03:18 1419 1

原创 车站分级p1983

题目描述一条单向的铁路线上,依次有编号为 1, 2, …, n 1,2,…,n的 n n个火车站。每个火车站都有一个级别,最低为 11 级。现有若干趟车次在这条线路上行驶,每一趟都满足如下要求:如果这趟车次停靠了火车站 xx,则始发站、终点站之间所有级别大于等于火车站 xx 的都必须停靠。(注意:起始站和终点站自然也算作事先已知需要停靠的站点)例如,下表是 5 5趟车次的运行情况。其中,前 4...

2019-08-23 20:14:54 485 1

原创 割点-tarjan

这是一道强连通的模板提,可能在某些方面还没有模板复杂,但对要学习强连通的人来说,这道题可以充分增加他们对强连通算法的认识。题目是这样的(转自洛谷)给出一个n个点,mm条边的无向图,求图的割点。输入格式第一行输入n,m下面m行每行输入x,y表示x到y有一条边输出格式第一行输出割点个数第二行按照节点编号从小到大输出节点,用空格隔开输入输出样例输入 #16 71 21 31 ...

2019-08-10 23:20:45 297

原创 二分图辨别

什么是二分图?在图论中,二分图是一类特殊的图,因为它的顶点可以分成两个互斥的独立集的点集U,V(也就是所有的点可以分为两个集合,相同集合中的点互相没有边),使得所有边都是连结一个 U 中的点和一个 V 中的点。顶点集 U、V 被称为是图的两个部分。等价的,二分图可以被定义成图中所有的环都有偶数个顶点。如何辨别二分图给定一个图,使用深度优先搜寻法,可以在线性时间内判断它是否为二分图,并输出一...

2019-08-09 19:09:13 339

原创 解题报告——双栈排序

题目(转自洛谷)Tom最近在研究一个有趣的排序问题。如图所示,通过22个栈S_1S1​ 和S_2S2​ ,Tom希望借助以下44种操作实现将输入序列升序排序。操作aa如果输入序列不为空,将第一个元素压入栈S_1S1​操作bb如果栈S_1S1​ 不为空,将S_1S1​ 栈顶元素弹出至输出序列操作cc如果输入序列不为空,将第一个元素压入栈S_2S2​操作...

2019-08-06 11:12:27 400

原创 stack

stack作为stl库中最基础的数据结构之一,stack是最简单的一个,但是它的先进先出的特性又让它的用途在某些特殊问题上非常的广泛,是初学者必须掌握的数据结构之一。个人认为stack的实现非常简单,在轻量编程中。没有太大必要使用stl中的《stack》,可能反而还会增加一些不必要的代码量。...

2019-08-05 19:15:07 182

原创 区间划定最小值题解--单调队列

单调队列–区间最小值欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ...

2019-07-21 20:35:30 998

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除