清华大学 张昆玮*2022 年6 月26 日 清华大学 张昆玮 2* 根据 D. E. Knuth 的分类方法计算机算法可以分为两类:* 数值算法与非数值算法* 其中的非数值算法包括:* 索引* 分类* 统计*2022 年6 月26 日 清华大学 张昆玮 3* 大家都说:* 常数很大?* 不好写?* 难调试?* 想不到?*2022 年6 月26 日 清华大学 张昆玮 4*POJ 上的某题,时限很紧* 大家都用树状数组,但是有人只会用线段树呢?* 而且我可以轻易改出一道不能用树状数组的题* 在线段树一次次TLE 后,有一个ID 发帖抱怨*“ 下次写一个汇编版非递归线段树,再超时?”* 可是大家都知道,超时的代码已经2k 了。* 其实我写的就是线段树。很快,而且不到1k 。2022 年6 月26 日 清华大学 张昆玮 5* 运行速度快* 适应能力强* 编写方便* 结构简单* 容易调试* 关键在于灵活实现*为什么在算法导论和黑书中都难见到其踪迹?2022 年6 月26 日 清华大学 张昆玮 62022 年6 月26 日 清华大学 张昆玮 7* 计算几何在长期的发展中,诞生了许多实用的数据结构