培训教材笔记-介绍&第一章
介绍
很早以前买的书了,和其他竞赛书大同小异,面向竞赛,小错误应该不少,涉及的面还是挺广的,主要是数据结构(并查集、线段树、图论等)、算法设计方法(分治、贪心等),还有好几章讲DP,后面有十套模拟题
计划春节以前完成除模拟题外的其他部分的学习
第一章时空分析
看过《算法导论》与《数据结构与算法分析》还有《深入理解计算机系统》之后这种分析就不能叫分析了,这就是竞赛教材的特点:讲的很简略、不够严谨,但是完全面向竞赛,上手也比较容易
举了一个最小生成树的题目最为例子,不过让我疑惑的是数据:顶点数<=100000,边数<=60000,边数至少要N-1才能连通吧……
还有一个求满足以x为最大公约数,y为最小公倍数的p,q数目,用的是枚举算法,给了两个简单的优化的例子,不过我好像有更好的做法:
p,q以x为最大公约数,以y为最小公倍数,则p=nx,q=mx,mn=q/p,质因数分解q/p得到a1^k1*a2*k2……,则共有(k1+1)(k2+1)……种,正确性有待验证
后面讲空间复杂度,就是不要爆内存嘛,没什么内容,等下去看csapp,看看堆栈到底是怎么一回事
总结
写程序要注意渐进时间的增长级别与优化,也要考虑常数优化,考试不要爆内存
以上都是屁话
还是《数据结构与算法分析》第二章写得好多了……举出的例子更好,竞赛书就是这样