如果想从0基础开始学习算法,应该用什么参考书比较好?

2012-06-05 20:52:33 +08:00
 hetong_007
RT,觉得《算法导论》这本书太难了,一下子也不知道选择哪本书~

看了书之后,应该去哪些题库找习题进行操练呢?谢谢~
6069 次点击
所在节点    问与答
18 条回复
gDD
2012-06-05 20:58:56 +08:00
virushuo
2012-06-05 21:00:53 +08:00
sicp 这不是一本纯粹讲算法的书,但是讲了算法的思维方式和程序工作方式。习题都做了收获会很大。
qiukun
2012-06-05 21:09:10 +08:00
kid7st
2012-06-05 22:41:06 +08:00
楼上那本似乎更难吧..如果有C++基础的话,推荐这一本.http://book.douban.com/subject/1971825/
txx
2012-06-05 22:45:16 +08:00
直接刷USACO拉~~~ 第一章 都是水题加讲解...网上的资源也足够多...
看书 不如直接刷题来得快
kid7st
2012-06-05 22:46:43 +08:00
@txx 非常赞同!直接刷题.code to learn
qiukun
2012-06-06 18:32:55 +08:00
都用过,个人觉得 USACO 不如以上我推荐的书。
mew7wo
2012-06-06 20:05:39 +08:00
为何楼上几个一看到算法就直接和ACM,刷题挂上钩了。
我觉得它们两关系并不是那么的紧密。
Gestalt
2012-06-06 23:09:10 +08:00
@hetong_007
建议先了解一些基础的东西,《算法导论》的第一章讲的就非常好。《数据结构与算法分析(Data Structures and Algorithm Analysis in C, Second Edition)》作为一部了解基本算法思想且较为通俗的书觉得还可以。《挑战编程——程序设计竞赛训练手册》这本书作为一本练习题的目录比较适合。
如果LZ是考虑学习算法而非准备竞赛的话题库推荐SPOJ。上面的可以提交的语言是我见过最多的题库。
另外不推荐为算法竞赛设计的书,一些实际很常见算法(如近似类的算法和文件压缩算法)短时限的算法竞赛都很少涉及。
sampeng
2012-06-06 23:20:26 +08:00
算法导论。。。你觉得难就对了。。。
我觉得这本书真心是在影响我一辈子的编程过程。。
原来只是快速扫了。。现在工作中经常会用到,拿出来再看看加上网上再找资料辅佐一下。。真的是豁然开朗的感觉。
算法导论我觉得不是一本看一遍就扔的书
ichigo
2012-06-06 23:22:35 +08:00
数据结构
fatmurphy
2012-06-06 23:44:00 +08:00
@mew7wo 关系确实不紧密。但是从另外一个角度来看,学习算法并不能只是"看懂"了算法要表大的内容,还应该尽量达到运用自如的地步,否则作用很有限。从这个角度来说ACM练习题是一个效率不高但是确实有效果的练习手段。
kerie
2012-06-07 00:11:14 +08:00
数据结构 + 1
数据结构比算法要实用的多
iwinux
2012-06-07 00:15:23 +08:00
惊现何同学……如果你学过C的话,其实 The Algorithm Design Manual 是个不错的选择,前面几章挺容易懂的,不会像《算法导论》一样一坨坨的公式。
hetong_007
2012-06-07 11:15:34 +08:00
@iwinux 悄悄说我是去教别人
iwinux
2012-06-07 11:51:14 +08:00
@hetong_007 噗……你把他忽悠进我们实验室吧 >.<
humiaozuzu
2012-06-07 11:55:14 +08:00
学习工程里面的算法还是acm的算法?
hetong_007
2012-06-07 23:27:32 +08:00
@iwinux 不是中大的╮(╯_╰)╭

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/38494

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX