comp9020 monographic 1: Numbers,
知识点太多,全部记录很浪费时间,全部知识请查看pdf,一些重点和容易出错的点我会提到。
手写版笔记里有所有的例题的解,有些写法也许和pdf上有一定差异,但答案都是正确的。
1.Numbers
imagefloor: 向下取整
ceil: 向下取整
需要注意的是: ceil(-3.5)=? 答案为: -3, ceil(-3.5)=-floor(3.5)=-3
从数学表达上我们可以得到:
image image求[n,m]区间里k的个数
2.Divisibility
imagem|n: n可被m整除,m可整除n,其中m是除数,n是被除数
image<figcaption class="Image-caption" style="box-sizing: inherit; margin-top: 0.66667em; padding: 0px 1em; font-size: 0.9em; line-height: 1.5; text-align: center; color: rgb(153, 153, 153);">注意0|0是成立的</figcaption>
Numbers>1 and only divisible by 1 and itself called prime.
只能被1和自身整除的大于1的数是质数
Greatest common divisor gcd(m, n) Numbers m, n s.t. gcd(m, n) = 1 are said to be relatively prime. Least common multiple lcm(m, n)
gcd 最大公约数,gcd(m,n)=1时,m,n互质
互质:没有除了1以外的其他所有数可以同时整除这两个数,则称两数互质
imagegcd和lcm不考虑符号象限问题
欧几里得gcd算法 与 绝对值
image image imagegcd算法是减法求差,证明写在手写板笔记上了。
改进:
image两种gcd算法的原理都是通过common divisor的Fact来化简数据
后者更快
后者公式见手写版笔记
3.Set
A set is defined by the collection of its elements. set 是order does not matter 的 collection类型。
注意:离散数学里的set和实际编程里的hashset或者treeset一类的概念相同,
set是一个顺序不重要的集合,并且集合内元素取值唯一。
需要注意的是:
s5= {{{}}} has 1 element
s2= {a,{a}} has 2 elements
看set元素的时候要注意层级的概念,这在实际编码中也会涉及到
image
用属性的方式在全集的概念下定义集合的方式
注意 set = {} is empty
set = {{}} is non-empty
image一些概念,略
Power set是幂集
let s = {a,b,c}
pow(s)={lambda, a, b, c, ab, ac, bc, abc} |pow(s)|=2**|s|
其中lambda是空集,|s|表示cardinality of s,s的基数,即s中元素的个数
image一些常见的数集
image说到数域的问题,我想安利一下人教版理数上的一篇文章,向我国的基础教育工作者致敬:
image image image image imageA,B disjoint 相离 iff(if and only if, 当且仅当) A^B=lambda A交B为空
imagealphabet字母表
字母表是order matters的、元素可与自身进行结合的有限非空集合
imagee.g. alphabet={a, b, c}
alphabet to 2 = {aa,ab,ac,ba,bb,bc,ca,cb,cc} |alphabet to n|=|alphabet| to n
其中 |a| to n = |a|**n=|a|^n 该集合基数的n次方
exercise:
[0,1000]有多少个 35的的倍数?
floor(1000/35)-floor(-1/35)=28-(-1)=29个
[100,200]有多少个10的倍数?
floor(200/10)-floor(99/10)=20-9=11个
变种:
(100,200]有多少个10的倍数?
floor(200/10)=floor(100/10)=20-10=10个
注意开闭区间的问题
image image image image