
数学基础知识
文章平均质量分 87
辅玉
这个作者很懒,什么都没留下…
展开
-
素数筛法详解
在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数称为素数,也叫质数。注意1.算术基本定理:任何一个大于1的自然数 n,如果n不为质数,那么n可以唯一分解成有限个质数的乘积。2. 若一个数 n 可以进行因数分解,则得到的两个数一定是有一个>=sqrt(n),另一个<=sqrt(n)。以下介绍3种常见的素数筛法。朴素筛法此方法一般用于判断单个数是否为素数。时间复杂度为O(√n) 。现设要判断n是否为素数,枚举从2到√n的所有自然数,若这些数都不是n的因数,则n为质数。原创 2021-02-20 22:35:40 · 574 阅读 · 0 评论 -
算法基础知识:康托展开与康托逆展开
康托展开康托展开是一个全排列到一个自然数的双映射。通俗简介康托展开可以求解一个全排列在所有全排列中的次序,比如:(如果规定)排列12345(在1~5的所有全排列中)次序为1 ,(则)12354次序为2,按字典序增加编号递增,依次类推。康托逆展开可以求解一个次序号对应的全排列是什么。具体原理就不用术语来解释了,直接上栗子。栗子给定一个全排列,计算其字典序。直观起见,我们举例[2, 3, 4, 5,1]来说明康托展开的运算步骤(设其字典序为rank=0):因为[2, 3, 4, 5,1]的原创 2021-02-04 17:24:15 · 550 阅读 · 0 评论