内容简介
《算法艺术与信息学竞赛》较为系统和全面地介绍了算法学最基本的知识。这些知识和技巧既是高等院校“算法与数据结构”课程的主要内容,也是国际青少年信息学奥林匹克(IOI)竞赛和ACM/ICPC国际大学生程序设计竞赛中所需要的。书中分析了相当数量的问题。
本书共3章。第1章介绍算法与数据结构;第2章介绍数学知识和方法;第3章介绍计算机几何。全书内容丰富,分析透彻,启发性强,既适合读者自学,也适合于课堂讲授。
本书适用于各个层次的信息学爱好者、参赛选手、辅导老师和高等院校计算机专业的师生。本书既是信息学入门和提高的好帮手,也是一本内容丰富、新颖的资料集。
目录
目 录
第1章算法与数据结构
1.1编程的灵魂--数据结构+算法=程序
1.2基本算法
1.2.1枚举
1.2.2贪心法
1.2.3递归与分治法
1.2.4递推
1.3数据结构(1)--入门
1.3.1栈和队列
1.3.2串
1.3.3树和二叉树
1.3.4力瘃其基本算法
1.3.5排序与检索基本算法
1.4数据结构(2)--拓宽和应用举例
1.4.1并查集
1.4.2堆及其变种
1.4.3字典的两种实现方式:哈希表.二叉搜索树
1.4.4两个特殊树结构:线段树和Trie
1.5动态规划
1.5.1动态规划的两种动机
1.5.2常见模型的分析
1.5.3若干经典问题和常见优化方法
1.6状态空间搜索
1.6.1状态空间
1.6.2盲目搜索算法
1.6.3启发式搜索算法
1.6.4博弈问题算法
1.6.5剪枝
*1.6.6专题:路径寻找问题
*1.6.7约束满足问题
第2章数学方法与常见模型
2.1代数方法和模型
2.2数论基础
2.2.1素数和整除问题
2.2.2进位制
2.2.3同余模算术
2.3组合数学初步
2.3.1鸽笼原理和Ramsey定理
2.3.2排列组合和容斥原理
2.3.3群论与Polya定理
2.3.4递推关系与生成函数
前言/序言