comp9020 monographic 1: Numbers, Sets, Alphabets

知识点太多,全部记录很浪费时间,全部知识请查看pdf,一些重点和容易出错的点我会提到。

手写版笔记里有所有的例题的解,有些写法也许和pdf上有一定差异,但答案都是正确的。

1.Numbers

image

floor: 向下取整

ceil: 向下取整

需要注意的是: ceil(-3.5)=? 答案为: -3, ceil(-3.5)=-floor(3.5)=-3

从数学表达上我们可以得到:

image
image

求[n,m]区间里k的个数

2.Divisibility

image

m|n: n可被m整除,m可整除n,其中m是除数,n是被除数

image

注意0|0是成立的

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以外的其他所有数可以同时整除这两个数,则称两数互质

image

gcd和lcm不考虑符号象限问题

欧几里得gcd算法 与 绝对值

image
image
image

gcd算法是减法求差,证明写在手写板笔记上了。

改进:

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
image

A,B disjoint 相离 iff(if and only if, 当且仅当) A^B=lambda A交B为空

image

alphabet字母表

字母表是order matters的、元素可与自身进行结合的有限非空集合

image

e.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

你可能感兴趣的:(comp9020 monographic 1: Numbers, Sets, Alphabets)