数论
文章平均质量分 82
juanlansexuehua
这个作者很懒,什么都没留下…
展开
-
快速幂
快速幂取模算法 在网站上一直没有找到有关于快速幂算法的一个详细的描述和解释,这里,我给出快速幂算法的完整解释,用的是C语言,不同语言的读者只好换个位啦,毕竟读C的人较多~ 所谓的快速幂,实际上是快速幂取模的缩写,简单的说,就是快速的求一个幂式的模(余)。在程序设计过程中,经常要去求一些大数对于某个数的余数,为了得到更快、计算范围更大的算法,产生了快速幂取模算法。[有读者反映在讲快速幂部分时有点转载 2017-01-24 17:35:33 · 197 阅读 · 0 评论 -
矩阵快速幂
一,基本概念 矩阵的快速幂是用来高效地计算矩阵的高次方的。将朴素的o(n)的时间复杂度,降到log(n)。 二,基本的原理 一般一个矩阵的n次方,我们会通过连乘n-1次来得到它的n次幂。 但做下简单的改进就能减少连乘的次数,方法如下: 把n个矩阵进行两两分组,比如:A*A*A*A*A*A => (A*A)*(A*A)*(A*A) 这样变的好处是,你只需要计算一次A*A,然后将结转载 2017-02-07 12:36:57 · 251 阅读 · 0 评论 -
数论之素数,包括eratosthenes算法,欧拉函数
一,素数 素数又称质数,有无限个。除了1和它本身以外不再有其他的除数整除。 算术基本定理:每个大于1的自然数均可写为质数的积,而且这些素因子按大小排列之后,写法仅有一种方式。 例如:6936=2^3*3*17^2,1200=2^4*3*5^2。 二,质因数的分解 概念:把一个合数用素因数相乘的形式表示出来,叫做质因数分解。(注意:由于任何一个合数n至多会有一个大于根号n的因子)原创 2017-01-21 10:29:10 · 511 阅读 · 0 评论 -
数论之扩展欧几里得 (求解不定方程,线性同余,求解模的逆元) (但是加了一些自己的东西)
一,基本的符号:“|” ,同余号“≡” 1, “|”意为,“整除” eg: 若b可被a整除,或a整除b,则可记作a|b 如2|6,8|16 性质: ①a|b,b|c => a|c ②a|b,a|c => a|(b+c)=>a|(ma+mb) (m,n∈Z) ③a|b(a≠0) => |a|≤|b 2, 同余号“≡” 两个整数a,b,若它们转载 2017-01-23 17:25:10 · 680 阅读 · 0 评论