以算法为例,是否存在讲解者认为“懂得自然懂了,不懂的我说再多也白搭”的心理
算法讲解其实就是数学证明嘛。
你们非要按照工程的方法去一步一步演绎当然感觉似是而非。
所以如果数学定理的证明可以一行一行讲清楚的话,KMP也可以。至于读者能不能看懂,那取决于基本知识知道多少了。
【以算法为例,是否存在讲解者认为“懂得自然懂了,不懂的我说再多也白搭”的心理】 换一个方式说,数学定理证明你能看懂是因为你已经知道了(学会了)他证明每一步用的引理或者公理。那么KMP讲解想看懂你就需要先理解前缀后缀之间的关系。
发现偏题了,补充一下:“懂得自然懂了,不懂的我说再多也白搭”其实翻译过来的是,愿意去学习前置理论的人自然也能学会,不愿意系统地学习的人那自然也就没法给你讲。
还可以再补充一下为啥有些算法就更容易理解(背诵), 比如Dijkstra。可能刚好算法流程和我们生活经验中找路的办法相似,所以我们理解起来快一点。但是如果要说前置知识的话说不定最短路算法的要求比KMP还高一点?如果你生活中每天都需要在超长字符串中把相同的子串找出来,说不定理解KMP会简单点?
■网友
学kmp时候并没有感觉晦涩难懂啊…我看的是打印的一本资料。找了下应该是https://www.cnblogs.com/zhangtianq/p/5839909.html改动的。是不是可能有时候选择用来学习的资料不适合当前的知识储备。比如刚开始自学C语言的时候,看的第一本书是谭浩强的《c程序设计》第二版。看了没多少页就有点懵,作为完全零基础,并不知道为什么用很多前面没讲到的东西来讲述。于是停下了一段时间(中考前)。后来换了其他书看完几本。再回去看《c程序设计》就没有问题了。
推荐阅读
- 傻子当国有银行行长都能赚钱这句话是否是对的
- 网通社|喜欢蔚来的越来越多了 连续四个月交付创新高 你是否愿意放弃特斯拉选择它?
- 豆瓣为啥受到同志社群的欢迎
- |PHEV车款没比较环保,新能源是否存在谎言呢?
- 运营商收取的流量费用价格是否合理
- 游戏公司一般咋识别游戏脚本
- 知乎上关于人生经验的介绍是否可能对青少年造成潜在危害
- 是否该停止密码掩饰了
- 织毛衣这种工艺是否会渐渐消失
- 给别人拉人头做项目,别人出事了,会连累到吗