摘要: 题目地址:https://www.luogu.com.cn/problem/P1551 运用算法 并查集 代码 #include <iostream> #include <string> #include <stack> #include <cstdio> using namespace std; 阅读全文
posted @ 2020-05-09 21:57 RainbowBird 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 辗转相除法(欧几里得算法) 欧几里德算法又称辗转相除法,是指用于计算两个正整数a,b的最大公约数。 时间复杂度为$O(logN)$。 举例 比如:30和42的最大公约数: $30 \mod 42 = 30$ $42 \mod 30 = 12$ $30 \mod 12 = 6$ $12 \mod 6 阅读全文
posted @ 2020-05-09 18:49 RainbowBird 阅读(1519) 评论(0) 推荐(0) 编辑
摘要: 快速排序 基本思想 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 算法复杂度 最差时间复杂度$O(N^2)$ 平均时间复杂度$O(NlogN)$ 阅读全文
posted @ 2020-05-09 15:07 RainbowBird 阅读(79) 评论(0) 推荐(0) 编辑