
数论与计算几何
主要包括数论与计算几何的内容
&不白熊
一头不白熊
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
查找所有质因数
这时:数有两种情况(质数,合数),当还是合数时,依然能通过e%i去除质数的乘积值,当是质数时,会走到算法的最后一步。while(num % i == 0) num /= i这一步直接去除了被合数整除的情况,所以不需要判断i是否为质数。所有的合数都可以由一些质数相乘得到,while(num % i == 0) num /= i是为了去除。而得到的所有i都是质数是因为:e%i==0当i是合数的情况是由。1,去除小于2的数字,因为0,1或者负数,因为最小的质数是2。为什么得到的所有i都是质数?原创 2024-08-07 17:17:28 · 475 阅读 · 0 评论 -
辗转相除法
gcd(a,b) == gcd(b,a%b),每次b在减小,每次b总是逼近0,所以最后的结果是a。原理为欧几里得算法:两个整数的最大公约数是能够同时整除它们的最大的正整数。根据辗转相除法:a,b的最大公约数 == b和a%b的最大公约数。根据gcd(a,b) * lcm(a,b) == a*b。所以gcd(a,b) == gcd(b,a%b)所以a,b的最大公约数x,能同时整除a,b。先给代码,如果看不懂记住代码即可。只需要快速算出gcd即可的出lcm。而n和0的最大公约数为n。原创 2024-08-10 20:23:32 · 260 阅读 · 0 评论