算法导论学习_数论
来源:互联网 发布:淡斑 知乎 编辑:程序博客网 时间:2024/04/29 01:21
算法导论学习_数论
1>gcd(0,a)=|a|;0 和任意一个不为0的整数的最大公约数都为该数的绝对值,因为0除以任何一个不为0的整数都得0。
2>练习31.1-5
由n|ab 推出 存在 K,使得 ab=nK;gcd(a,n)=1 推出 存在 u,v,使得 ua+vn=1;对上式两端同时乘以b,有uab+vnb=b;代入第一式有:unK+vnb=b;即 n(uK+vb)=b所以 n|b
3>练习31.1-11 证明:大于1的自然数必可写成质数的乘积。
用反证法:假设存在大于1的自然数不能写成质数的乘积,把最小的那个称为n。自然数可以根据其可除性(是否能表示成两个不是自身的自然数的乘积)分成3类:质数、合数和1。首先,按照定义,n大于1。其次,n不是质数,因为质数p可以写成质数乘积:p=p,这与假设不相符合。因此n只能是合数,但每个合数都可以分解成两个严格小于自身而大于1的自然数的积。设其中a和b都是介于1和n之间的自然数,因此,按照n的定义,a和b都可以写成质数的乘积。从而n也可以写成质数的乘积。由此产生矛盾。因此大于1的自然数必可写成质数的乘积。
4>负数可以求模取余
两个正数的求模运算结果是正数,
两个负数的求模运算结果是负数.
一正一负的话取决于"分子"的符号.
5%3=2
(-5)%3=-2
5%(-3)=2
(-5)%(-3)=-2
5>31.1-2 证明:有无穷多个素数
假设素数有穷,设最大的素数为A,那么我们再构造一个数b=2*3*5*7*~~~~A+1;
那么这个b一定是合数,但是它不能被所有的素数整除,于是他也是一个素数,与假设矛盾
,所以素数有无穷个
6>
0 0
- 算法导论学习_数论
- 算法导论_计数排序学习笔记
- 算法导论_基数排序学习笔记
- 算法导论笔记:31数论算法
- 算法导论31(数论算法)
- 算法导论中的数论算法(一)
- 算法导论之有关数论的算法
- 《算法导论》数论知识总结(一)
- 《算法导论》数论知识总结(二)
- 算法导论 第三十一章:数论
- 算法_1: 数论_续
- 170916_算法导论学习(四)_2.3 设计算法_练习
- 算法导论_二分查找
- 算法导论_堆排序
- 算法导论_插入排序
- 算法导论_归并排序
- 算法导论_选择排序
- 算法导论_堆排序
- 用WebCollector做Web挖掘(实例1)
- google 2015最新的校招测试题与思路
- TCP协议状态图
- ant debug最常见的一个错误解决
- 【备忘录】僵尸进程与孤儿进程以及一些进程间的知识
- 算法导论学习_数论
- HDU-1465-不容易系列之一(简单全错位排序)
- 访问一个网页的过程
- 类名.class (来自 graniteLan的博客 )
- yaml 概念入门
- 使用java提供的api对文件进行压缩解密
- 编程之美leetcode之编辑距离
- 位运算总结
- Distinct Subsequences