Akvicor World 太棒了,我逐渐理解一切

堆排序

排序算法 不稳定排序 O(n\log(n)) 堆 堆是具有以下性质的完全二叉树: 根结点标号为 0,则对于根 i 的左子为 2i+1 右子为 2i+2 大顶堆:每个结点的值都大于或等于其左右子结点的值 arr[i] >= arr[2i+1] && arr[i] >= arr[2i+2]

Akvicor 发布于 2020-01-23

递归实现枚举

指数型 /* *********************************************** Author : Akvicor Created Time : Wed Sep 18 21:07:30 2019 File Name : 1026.cpp *****

Akvicor 发布于 2019-10-08

二进制操作

运算符 常用的运算符共 6 种,分别为与( & )、或( | )、异或( ^ )、取反( ~ )、左移( << )和右移( >> )。 运算符

Akvicor 发布于 2019-09-14

快速乘 - 64位整数乘法

O(log) 快速幂思想 类似于快速幂的思想,把整数 b 用二进制表示,即 b=c_{k-1}2^{k-1}+c_{k-2}2^{k-2}+...+c_{0}2^{0} 那么 a * b=c_{k-1} * a * 2^{k-1}+c_{k-2} * a * 2^{k-2}+...+c_{0} *

Akvicor 发布于 2019-09-13

容斥原理

简介 假设班里有10个学生喜欢数学,15个学生喜欢语文,21个学生喜欢编程,班里至少喜欢一门学科的有多少个学生呢? 是 10+15+21=46个吗?不是的,因为有些学生可能同时喜欢数学和语文,或者语文和编程,甚至还有可能三者都喜欢。 为了叙述方便,我们把喜欢语文、数学、编程的学生集合分别用A,B,C

Akvicor 发布于 2019-08-15

欧拉函数证明

给定任意正整数n,那么在小于等于n的所有正整数之中,有多少个与n构成互质关系? 计算这个值的方法就叫做欧拉函数\phi(n)表示:在1到n之中,与n构成互质关系的数的数量。 分析 情况一 如果

Akvicor 发布于 2019-08-13

Dirichlet 狄利克雷卷积

定义 定义数论函数f和g的狄利克雷卷积为h,则h(n)=\sum_{d|n}f(d) g(\frac{n}{d})记做h=f * g(*代表卷积) 性质 狄利克雷卷积满足交换律,结合律,对加法

Akvicor 发布于 2019-08-07

逆元的求法(欧拉定理、阶乘逆元、费马小定理、模质数p的情况)

乘法逆元 对于缩系中的元素,每个数a均有唯一的与之对应的乘法逆元x,使得ax\equiv 1\left(\text{mod}n\right),一个数有逆元的充分必要条件是gcd(a,n)=1,此时逆元唯一存在 在一般数学中,我们所说的逆元就是倒数,但是在数论中,如果一个数字a存在一个对p的逆元x,就

Akvicor 发布于 2019-08-01

网络流

网络流 引入 假设你所在的村庄开通了地下流水管道,自来水厂源源不断的提供水,村民们用水直接或间接用水,而村庄用完的废水统一回收于另一点(设从自来水厂流出的水全部回收)。当然每个管道有一定的容量,求出废水站最多可以汇聚多少水。 概念 容量:每条边都有一个容量(水管的最大水流容量)

Akvicor 发布于 2019-07-28

链式前向星

前向星是一种特殊的边集数组中的每一条边按照起点从小到大排序,如果起点相同就按终点从小到大排序,并记录下某个点为起点的所有边在数组中的起始位置和存储长度,那么前向星就构造好了。 len[i]来记录所有以i为起点的边在数组中的存储长度 head[i]来记录以i为边集在数组中的第一个位置 我们输入的边的顺

Akvicor 发布于 2019-07-26