ACM/ICPC在线题库集锦:
网址:http://acm.uva.es/
简称: uva
全称: Valladolid Programming Contest Site
所在国:西班牙
提交方式:web方式和email方式
说明:可能是世界上名气最大,最古老的在线题库了。收集了N卷
的题目,许多国家队的高手都是从这里练出来的。题目包括历届
ACM/ICPC分区赛试题、总决赛试题以及很多其他网友自己出的题
目。题目类型比较全面,难度较平均,但是测试数据非常刁钻,
而且经常更新旧的数据,在别的地方能通过的程序到了uva就可能
无法通过。定期有比赛,并且可以利用它的系统主办自己的比赛。
唯一的缺点是系统太烂,比赛的时候经常系统崩溃(不过这和参加
的人太多也有关)。
网址:http://acm.zju.edu.cn/
简称: zju/zoj
全称: ZJU Online Judge Contests
所在国:中国
提交方式:web方式
说明:目前国内唯一一个在线题库。NJU的Settler队
主要就在这里训练,因为不要出国,很方便。目前有
6卷题目了,题目大多数是以前的ACM/ICPC分区赛试
题和一些浙大ACM队员自己出的题目。定期有比赛。
网址:http://acm.timus.ru/
简称: ural
全称: Ural State University Problem Set Archive with Online Judge System
所在国:俄罗斯
提交方式:web方式和email方式
说明:这也是一个著名的题库,因为是俄罗斯人办的,题目的数
学味道比较浓。定期有比赛。这里的题目风格和ACM/ICPC不太相同,
题目数学趣味浓,有一定难度,很多题目都是那种需要一些小技巧的,
一旦想出来了程序可能只有几十行。中国的很多搞OI的中学生在这里
做题,这里的题目比较适合中学的OIer。
网址:http://acm.sgu.ru/
简称: sgu
全称: Saratov State University :: Online Contester
所在国:俄罗斯
提交方式:web方式
说明:一个比较新的题库,同样因为是俄罗斯人办的,题目的数学
味道很浓。定期有比赛。
以上这几个是比较适合参加ACM/ICPC的同学训练用的题库,还有一些
诸如USACO等题库,基本上就是面向中学生的,这里就不提了。
基本算法与数据结构中文索引:
Data Structures 基本数据结构
Dictionaries 字典
Priority Queues 堆
Graph Data Structures 图
Set Data Structures 集合
Kd-Trees 线段树
Numerical Problems 数值问题
Solving Linear Equations 线性方程组
Bandwidth Reduction 带宽压缩
Matrix Multiplication 矩阵乘法
Determinants and Permanents 行列式
Constrained and Unconstrained Optimization 最值问题
Linear Programming 线性规划
Random Number Generation 随机数生成
Factoring and Primality Testing 因子分解/质数判定
Arbitrary Precision Arithmetic 高精度计算
Knapsack Problem 背包问题
Discrete Fourier Transform 离散Fourier变换
Combinatorial Problems 组合问题
Sorting 排序
Searching 查找
Median and Selection 中位数
Generating Permutations 排列生成
Generating Subsets 子集生成
Generating Partitions 划分生成
Generating Graphs 图的生成
Calendrical Calculations 日期
Job Scheduling 工程安排
Satisfiability 可满足性
Graph Problems -- polynomial 图论-多项式算法
Connected Components 连通分支
Topological Sorting 拓扑排序
Minimum Spanning Tree 最小生成树
Shortest Path 最短路径
Transitive Closure and Reduction 传递闭包
Matching 匹配
Eulerian Cycle / Chinese Postman Euler回路/中国邮路
Edge and Vertex Connectivity 割边/割点
Network Flow 网络流
Drawing Graphs Nicely 图的描绘
Drawing Trees 树的描绘
Planarity Detection and Embedding 平面性检测和嵌入
Graph Problems -- hard 图论-NP问题
Clique 最大团
Independent Set 独立集
Vertex Cover 点覆盖
Traveling Salesman Problem 旅行商问题
Hamiltonian Cycle Hamilton回路
Graph Partition 图的划分
Vertex Coloring 点染色
Edge Coloring 边染色
Graph Isomorphism 同构
Steiner Tree Steiner树
Feedback Edge/Vertex Set 最大无环子图
Computational Geometry 计算几何
Convex Hull 凸包
Triangulation 三角剖分
Voronoi Diagrams Voronoi图
Nearest Neighbor Search 最近点对查询
Range Search 范围查询
Point Location 位置查询
Intersection Detection 碰撞测试
Bin Packing 装箱问题
Medial-Axis Transformation 中轴变换
Polygon Partitioning 多边形分割
Simplifying Polygons 多边形化简
Shape Similarity 相似多边形
Motion Planning 运动规划
Maintaining Line Arrangements 平面分割
Minkowski Sum Minkowski和
Set and String Problems 集合与串的问题
Set Cover 集合覆盖
Set Packing 集合配置
String Matching 模式匹配
Approximate String Matching 模糊匹配
Text Compression 压缩
Cryptography 密码
Finite State Machine Minimization 有穷自动机简化
Longest Common Substring 最长公共子串
Shortest Common Superstring 最短公共父串
书:
算法类:
N. Wirth, Algorithms + Data Structures = Programs, Prentice-Hall, Englewood Cl
iffs, 1975.
N. Wirth, Systematic Programming An Introduction, Prentice Hall, 1973.
A. Engel, Exploring mathematics with your computer, The Mathematical Associati
on of America, 1993.
H. Papadimitriou, K. Steigltz, Combinatorial optimization – Algorithms and co
mplexity, Dover, PUBNS, 1998.
A. Vitek, I. Tvrda i dr., Problems in programming / experience through practic
e, John Wiley & Sons Ltd., 1991.
T. H. Cormen, C. E. Leiserson, R. L. Rivest, S. Stein, Introduction to Algorit
hms, The MIT Press, 2001.
D. E. Knuth, The Art of Computer Programming, 2nd Edition, Addison-Wesley, Vol
ume 1: Fundamental Algorithms, 1997.; Volume 2: Seminumerical Algorithms, 1997
.; Volume 3: Sorting and Searching, 1998.
Z. Michalewicz, D. B. Fogel, How to Solve It: Modern Heuristics, Springer-Verl
ag Berlin, 1999.
Steven S. Skiena, The Algorithm Design Manual, Springer-Verlag New York, Ins.,
1998.
A. Shen, Algorithms and Programming - Problems and Solutions, Birkh?user Bosto
n, 1997.
计算机算法导引 机械
赛题分析类:
ACM 试题分析(一)、(二)、(三) 吴文虎 清华
ACM 国际大学生程序设计比赛入门 郭嵩山(中山) 机械出版
组合数学/图论/奥林匹克信息学国内外赛题分析 吴文虎 王建德
ACM/ICPC 试题分析 王建德
理论类:
M. Sipser, Introduction to Theory of Computation.
H. Lewis & C. Papadimitriou, Elements of the theory of computation.
J. Hopcroft, R. Motwani & J. Ullman. Introduction to Automata
Theory, Languages, and Computation.