说来惭愧,楼主本来是四年本科+两年研究生计算机科班出身,但由于毕业后没有从事专业工作,荒废了好多年。最后工作没那么忙,突然又对算法方面起了兴趣,就想找本算法书研究研究,顺便找相关OJ测试一下代码能力。去搜搜相关书籍,《算法导论》太多推导不是我想要的,直接放弃。《算法竞赛入门经典》感觉对于荒废多年的人还是太难,后来就买了本《算法竞赛从入门到进阶》来研究。
陆续读了两个月,由于楼主只有下班时间带完孩子后才有一到两个钟头看书刷题,且相关题目一卡起来两三天才能解决,读了两个月才读完搜索一章,且基本刷完题。感觉上:《算法竞赛从入门到进阶》和《算法竞赛入门经典》两本书相互交叉看会更好,《进阶》里面只提了大概意思和很基本的情形,很多技巧《经典》里面提得更多,如九数码问题,《进阶》只提到cantor转换,很多时候没法一下子就想到这个完美哈希,《经典》里面提到了三种方法:stl map,自己建哈希和完美哈希,感觉还是很实用。
搜索一章相关题目汇总: dfs:hdu 1241,1426, 2510, 2553, 2677, 3350, 3290, 2821, 2782, 2616, 2514, 1547, 1551
bfs:hdu 1180,2102,1253,1548,2717,1372,1240,1495
剪枝:hdu1010,1455,1258,1518,2010,2610,2611,4848,6341,1175
dbfs:hdu1430,1401,1043,1254 poj1915,3126,1077
IDA*:hdu1667,1560,4127,2234