学习
望道缘君
If you don't have to do your best, then how do you face yourself in the future.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2019.1.10学习(图相关)
在今天我要开始学习一些东西了,最近是学习图的相关学习。 我决定按照我找到的一个路径进行学习,大概如下: 1、图的建立、存储(完成) 2、树的遍历(完成) 3、无根树转有根树(完成) 在无根树中,将某一结点定为根节点,进行遍历,就变成了有根树。在遍历时,若连接的点不是它的父结点,就为子结点。就好比,在一堆结点中,拉一个起来为根节点,就变成了有根树。 4、并查集(完成) 5、最小生成树...原创 2019-01-10 14:36:54 · 168 阅读 · 0 评论 -
大整数质因数分解(含模板)
今天学习到了一个很强的模板----大整数质因数分解。 模板: const int MAXN = 1000005 ; int64_t mulEx(int64_t a , int64_t b , int64_t Mod) {///logn快速乘 if(!a) return 0 ; int64_t ans(0) ; while(b) { if(b & ...原创 2019-04-07 21:18:05 · 6187 阅读 · 7 评论 -
约瑟夫环问题解法
约瑟夫环问题是类似这样的问题: 给你一个序列,编号为1到n,给你一个数m让你从第一个人开始数,数到m就删除这个数。就是这样的问题,一般是问最后一个删除的是哪个。 我了解到得解法有两种: 第一:暴力循环枚举: 时间复杂度是O(n^2)的。 代码:简单模拟,就不上了......................(你咬我)算了,我就不贴了,毕竟这么简单,这都不行那还是用后面个吧 第二:公式推导...原创 2018-10-04 15:32:08 · 245 阅读 · 0 评论 -
图的建立相关学习
图论再竞赛中有很多的用处,也很好用,在这里进行图的结点的建立进行初步的介绍。 再图的建立里面,有两种基础主要的建立方式: 1、邻接矩阵 2、邻接表 上面是很基础,必须了解的方法,其中邻接表更加需要进行理解清楚,因为更常用且好用。 先来介绍邻接矩阵,这也是需要理解的,这个再某些时候更方便。 1、邻接矩阵 邻接矩阵就是用二维数组来进行存储边之间的关系,这是很好理解的,但是再n很大或者是稀...原创 2019-01-10 14:19:07 · 165 阅读 · 0 评论 -
树的遍历
在图中有一种特殊的图形,叫树,关于树的相关定义,可以参考百科,这里讲解一下树的遍历方式。 在树中,一般有两种遍历方式: 1、BFS(BreadthFirstSearch)也就是广度优先搜索,在这一遍历方式中,运用了队列,在开始,队列里只有一个点,将这一点弹出,将它的子结点全部入队。在这一过程中,算法会将一层的点全走完才会走下一层,于是运用队列很适用于这一算法 ///广度优先搜索 void ...原创 2019-01-30 16:36:27 · 245 阅读 · 0 评论 -
并查集
并查集时一个很有用的一个算法,其用来处理不相交合并和查询的问题。 有一个blog讲解很详细,推荐给大家:并查集详解 在其中的代码解释较为繁琐,但是很详尽。 我的模板如下: int fa[10000] ;///在使用前记住还原,一个点的父亲为自身,fa[i] = i ; int Find(int x)///查找,包含状态压缩 { return (fa[x] == x) ? fa...原创 2019-01-30 17:08:47 · 166 阅读 · 0 评论
分享