书籍::
算法导论,算法艺术与信息学竞赛(黑书),王晓东算法设计, 组合数学,离散数学, 算法艺术与信息学竞赛
《国际大学生程序设计竞赛》共4本, 算法导论, 程序设计导引及在线实践
算法大致可以分为Dp,搜索,图论,计算几何,组合数学,数论等等。
做题的网站:
USACO, 浙大,北大,杭电.
转载自 http://hi.baidu.com/eec60b0/blog/item/2cdbfc22df7993a04723e862.html
自己收藏用来做题的,呵呵 。
------------------------------------------------------------
书籍:
算法数学基础:
具体数学
全面介绍算法:
算法导论
计算机程序设计的艺术
图论算法:
组合算法:
数论算法:
计算几何:
一些大学的oj:
北京邮电大学 online judge (boj) http://acm.cs.bupt.cn/onlinejudge/
上海交通大学 http://acm.sjtu.edu.cn/
哈尔滨工业大学 http://acm.hit.edu.cn/index.php
(以下是转自看雪论坛的):
浙江大学 online judge(zoj)http://acm.zju.edu.cn
国内最早也是最有名气的oj,有很多高手在上面做题。特点是数据比较刁钻,经常会有你想不到的边界数据,很能考验思维的全面性,现在我主要在这个oj上做题
北京大学 online judge(poj)http://acm.pku.edu.cn/judgeonline/
建立较晚,但题目加得很快,现在题数和zoj不相上下,特点是举行在线比赛比较多,数据比zoj上的要弱,有时候同样的题同样的程序,在zoj上wa,在poj上就能ac
同济大学 online judge http://acm.tongji.edu.cn/index.php
这个oj题数上不能与上两个相比,推荐这个oj的原因是它是中文的,这对很多对英文不太感冒的兄弟是个好消息吧。它也因此吸引了众多高中的oier,究竟他们的英文还差一些呵呵,上面的题目也更偏向高中的信息学竞赛一些。
西班牙valladolid大学 online judge(uva)http://online-judge.uva.es/problemset/
换地址了http://icpcres.ecs.baylor.edu/onlinejudge/
世界上最大最有名的oj,题目巨多而且巨杂,数据也很刁钻,全世界的顶尖高手都在上面。据说假如你能在uva上ac一千道题以上,就尽管向ibm、微软什么的发简历吧,绝对不会让你失望的。
俄罗斯ural立大学 online judge(ural)http://acm.timus.ru/
也是一个老牌的oj,题目不多,但题题经典,我在高中的时候就在这上面做题的。
usacogate online judge(usaco)http://ace.delos.com/usacogate
全美计算机奥林匹克竞赛(usaco)的练习网站,特点是做完一关才能继续往下做,与前面的oj不同的是测试数据可以看到,并且做对后可以看标准解答,所以假如大家刚开始的时候在上面那些oj上总wa却找不到原因的话,可以试着来这里做做,看看测试数据一般是从什么地方阴你的。
acm总决赛、区域赛的problem set
http://www.acm.inf.ethz.ch/problemsetarchive.html
国外大学算法课程的主页:
纽约州立大学stony brook教授的算法主页:
http://www.cs.sunysb.edu/~algorith/
匹兹堡大学:
http://www.cs.pitt.edu/~kirk/algorithmcourses/
哈佛大学
probabilistic analysis and algorithms
http://www.eecs.harvard.edu/~michaelm/cs223/index.html
计算几何学:
http://geometryalgorithms.com/
http://www.cs.umd.edu/%7esamir/754/754.html
http://compgeom.cs.uiuc.edu/~jeffe/compgeom/compgeom.html
http://www.csc.kth.se/tcs/aalg/lectures.html
http://www.cs.brown.edu/courses/cs252/lectures.html
图论算法:
http://theory.stanford.edu/~tim/w08b/w08b.html
stanford大学图形学相关课程
http://graphics.stanford.edu/courses/#cs268
开源算法库:
代数几何:
http://www.cgal.org/
常见算法题目:
- Dynamic Programming
- Greedy
- Complete Search
- Flood Fill
- Shortest Path
- Recursive Search Techniques
- Minimum Spanning Tree
- Knapsack
- Computational Geometry
- Network Flow
- Eulerian Path
- Two-Dimensional Convex Hull
- BigNums
- Heuristic Search
- Approximate Search
- Ad Hoc Problems