1
Raisu 2019-06-26 18:18:19 +08:00 via Android
写上教科书的算法想不出来是正常的。
我第一本算法书就是 算法导论 |
2
ninechapter 2019-06-26 19:07:51 +08:00
算法的学习,70%靠实践,30%靠理论。通过积累一定的刷题量,可以完成实践和总结。建议在 lintcode 上面做算法题,有 2000 多道,按类别做上 3 个月,如二叉树、二分法、动归、图论这些,一定有质的飞跃。
|
3
Heartbleed 2019-06-26 19:16:36 +08:00 via Android
之前在学红黑树的时候就在感慨怎么会有人想出这种东西...
|
4
Oz2011 2019-06-26 20:51:53 +08:00 1
如果觉得自己智力不够,那放弃也没关系。算法导论里至少前面那些基本的数据结构 list stack array map set hash 要非常了解,还有各种操作的复杂度,算法导论我觉得至少要读到动态规划那。
其实复杂的算法在日常工作中也不是经常用到,也就是上面说的那些数据结构 要用的时候选择复杂度好的。工作我觉得就够了。 很多人练算法主要是为了面试,尤其是美国公司面试算法的很多。确实理论上你不用看太多,稍微看看可以去 leetcode 先捡 easy 的做。easy 的能做完我觉得其实就比大部分,至少 70%的人要好了吧。向链表反转,求交点这种都是以前面试经常会问到的题目。 |
5
zetary 2019-06-26 20:54:51 +08:00 1
别人做研究的也不是一天提一个算法, 很多算法是在漫长的岁月中一点点被提出来的, 而且研究者通常要做理论分析, 当你去做分析的时候你会有意识地去避免复杂度高的操作, 这样子也能提供一点基本的想法吧. 学的话慢慢来没关系的, 熟悉了就好了.
|
6
ayyll 2019-06-27 02:04:34 +08:00 via Android
多刷 dp 最好和别人一块 你会知道什么叫智商碾压
|