// zj蒟蒻瑟瑟发抖。。
// 停课了。要好好努力!——10月8日8:29于机房
1. 1946 年 美国 -> 第一台计算机
2. 真空电子管 -> 晶体管 -> 集成 -> 大规模集成
3. 字长:8位(8 bit)这种东西 balabala。。
4. 主频:about 运算速度 e.g. pii300 -> 主频300Hz
5. 工厂自动化(FA).
CAD -> design; CAI -> 辅助教学
CAM -> manufacture; EDI -> 电子数据交换(关于无现金交易这样子)
CAT -> test; OA -> office automation;
6. 硬件结构:冯·诺依曼式(美籍匈牙利人) -> 运算器 / 控制器 / 存储器 / 输入(出)设备 => 存储程序的概念
7. 卡特兰数:$C_n=\frac{C^n_{2n}}{n+1}$
用途:1. 长度为 n 的进栈序列 1,2,3,...,n,求出栈种数
2. 在 (n+2) 边凸多边形内连若干不相交的对角线来划分三角形,求问几种?
3. n 个节点排 BST
4. n 对括号内有几种是匹配的?(in 全部情况)
8. 二叉树:$n_0=n_2+1$ 对于k叉树,联立边关系和点关系,也就是$n=n_0+n_1+...+n_k$(点关系)和 $n-1=k*n_k+...+n_1$,于是可推出。
9. 约瑟夫环问题:当n为2的幂次时,最后留下的都是1;当n不是的时候,两个2的幂次之间,留下的人的编号为3,5,7,9,......
k阶约瑟夫问题:O(n) DP :$f(1)=0$; $f(n)=(f(n-1)+k)mod\;n$ 出现0是因为mod的缘故,+1就可以了
n的值 | 队列 | 活下的人 |
1 | 1 | 1 |
2 | 1 2 | 1 |
3 | 1 2 3 | 3 |
4 | 1 2 3 4 | 1 |
5 | 1 2 3 4 5 | 3 |
6 | 1 2 3 4 5 6 | 5 |
7 | 1 2 3 4 5 6 7 | 7 |
8 | 1 2 3 4 5 6 7 8 | 1 |
10. 08年提高问题求解T2(21本书选四本,每两本编号不相邻):可有$1\le x_1<x_2-1<x_3-2<x_4-3\le18$,即将不连续的$x_1$,$x_2$,$x_3$,$x_4$映射到[1,18]的连续区间上,也就相当于$C_{18}^4$,故答案为3060.
11. 99年提高:n条折成角的直线,划分平面数目为$2n^2-n+1$。推论:直线分割平面:$\frac{n(n+1)}{2}+1$;封闭曲线(如一般位置上的圆)分割平面:$n^2-n+2$;平面分割空间:$\frac{n^3+5n}{6}+1$。
12. 07年普及:n个数划分r个非空集合,有$S(n,1)=1$; $S(n,n)=1$; $S(n,r)=S(n-1,r-1)+r\times S(n-1,r)$。$S(n-1,r-1)$不用乘系数,因为在向下推的时候已经包含了固定各个数的情况。听说也是第二类斯特林数。
13. 06年提高:三角形路径数目。一种解释是:路径唯一,从倒数第二层到终点有且仅有n-1种方法,再向上同理,为n-2种。根据乘法原理,n层三角形的方案数目是$(n-1)!$
14. x个a,y个b,z个c排字符串,包含子串'abc'的种数:捆一个abc,算全排列;捆两个,减去;捆三个,加上。e.g. 3个a,5个b,3个c,种数:$\frac{9!}{2!4!2!}-\frac{7!}{2!3!}+\frac{5!}{2!3!}$
15. 圆桌问题之相邻不重复。有n个人坐在一张圆桌上吃饭,要求每天每一个人两边相邻的人不同,问这样最多可以安排多少天?如3个人时只能1天,4个人时也只能是1天,而5个人可以安排2天。那么抽象为n个节点的无向图,每一个节点都去和其他所有节点连边,总边数为$\frac{n(n-1)}{2}$,每一天过后都删去n条边,所以得到的结论就是$\lfloor \frac{n-1}{2} \rfloor$
16. 强制类型转换:(类型)(表达式)。事实上,除非表达式是单个变量,否则都要加括号。e.g. (int)x+y 的含义是将x转换为int以后和y相加,与(int)(x+y)的含义是不同的。
17. 由数字1,1,2,4,8,8所组成的不同的四位数的个数是102。算法:不能直接$C^4_6\;A^4_4$然后干嘛干嘛。。正解应当分类讨论
一:①1、1、2、4;②1、1、2、8;③1、1、4、8;④1、2、8、8;⑤1、4、8、8;⑥2、4、8、8这6组,他们的方案数都是$\frac{A_4^4}{2!}$,总的就是$6\times 12$,72种;
二:仅有1、2、4、8组成当然就是4个全排列;
三:1、1、8、8去排;
答案就是$72+24+6=102$。
18. 14提高选择:同时查找2n 个数中的最大值和最小值,最少比较次数为( )。正解:两两比较,大的和max去比,小的和min去比。第一组比较一次得到max和min;后面$2\times (n-1)$个数,两两比较需要$n-1$次,每一个还会去和max/min比较一次,也就是$2\times (n-1)$次,综上,即为$3\times (n-1)+1$次。
19. 应用快速排序的分治思想,可以实现一个求第k大数的程序。假定不考虑极端的最坏情况,理论上可以实现的最低的算法时间复杂度是。。。O(n)!
呃,事实上,在做的时候,分治的另一个区间是可以抛掉的。也就是说,虽然进行了二分,$T(n)=n+\frac{n}{2}+\frac{n}{4}+...$ 因此渐进复杂度为O(n)。
20. 世纪难题:约瑟夫好人坏人version,尚未知道数学解法,无法手算qwq;
21. 对于一个无向图,他不是联通图意味着必定存在一个节点的度为0;对于任何一个图,不存在奇环是其为二分图的充要条件;
22. 任何一个算法的空间复杂度都不大于其时间复杂度;
23. while(1)rp++;