主要观点总结
本文讨论了关于《算法导论》一书的内容及其引发的讨论,重点是探讨是否通过掌握《算法导论》的90%就能超越90%的程序员。文章包含了多个回答,涵盖了不同观点,包括认为这样可以超越程序员的看法,以及认为这只是一本入门书籍,真正的能力提升需要更多实践和挑战的看法。
关键观点总结
关键观点1: 话题引入
文章从一个小伙伴的留言开始,提出了一个问题:弄懂《算法导论》的90%是否就能超过90%的程序员。
关键观点2: 不同回答的观点
文章包含了多个回答,其中有的认为可以超越大部分程序员,有的认为《算法导论》只是入门书籍,超越大部分程序员需要更多的实践和经验积累。
关键观点3: 关于程序员能力的讨论
文章还讨论了程序员的能力是否主要取决于书本学习,以及什么是程序员最重要的品质和能力。
关键观点4: 综合观点
文章最后综合了各个回答的观点,强调了学习和实践的重要性,并指出超越他人并不是真正的目标,提高自己的技术能力和专业素养才是最重要的。
正文
有个小伙伴留言:沈老师,听说算法很重要,有人说弄懂了《算法导论》的90%,就超过了90%的程序员,是真的吗?最后一个高赞回答,直戳人心...主题:弄懂《算法导论》的 90%,就超越了 90%的程序员吗?https://www.zhihu.com/question/315201616
何止90%,超越99%程序员问题都不大。本人加入腾讯,靠的就是算法+刷题。假的。读一个《算法导论》就敢超越百分之九十程序员,你当程序员是吃干饭的呢?《算法导论》里面的算法都是入门的东西,当你真想去实现一个编译器,操作系统的时候,那些算法都要做很多改进呢。就这么一个玩意,还敢号称超越90%程序员,得多没见识啊?我在2015年左右离开了程序员岗去做管理,一年大概能赚70个左右。我说几句,信不信由你吧。1,这书真没啥卵用,看不看都行。我一直不理解为啥大学老师们为啥都热衷推这本书,这书最大的作用就是垫显示器。可能也是老师们没上过班,不知道上班到底需要啥。2,把《数据结构》前半本弄明白,够你用两辈子,数据结构的主要用途是找工作。工作几乎都是打螺丝,几乎用不到太复杂的算法。工业级代码要求的是稳定和可维护性,不是让你炫技的,写的越简单越好,最好全部写成if esle,将来加个新功能,或者换别人维护都容易。3,程序员大部分能力都不是在书上学的,而是一边工作一边学的,或者说工作需要啥就学啥。钻研精神,学习的激情,做事有始有终的品格,是程序员最重要的品质,我以前领导说他一眼就能看出来谁能吃这碗饭,我后来做管理,也一眼能看出来,绝大部分人根本没激情,不想干这行,也注定干不久。4,想提升编码能力,就去大量写代码,而不是看各种学术相关的书。码农是个手艺活,也是体力活,反复练习才能形成自己的“工具包”,深刻掌握一两本编码相关的书就够了。5,程序员最终能不能混好,跟智商关系不大,主要是对技术的激情和钻研的品格,也就是你到底想不想干这行,绝大部分人是不想的,那也没办法,他自己也说服不了他自己。6,90%的程序员其实不能算程序员,水平差极了,当然收入也没法看。有没超越90%我不知道,但是如果你问周围的程序,我打包票,懂算法的没几个。工作后接触的很多程序员,对散列表原理基本一无所知。其实搞懂《算法导论》,综合能力上并没有超过90%的程序员,但是看《算法导论》,学习的过程非常能够磨练你的心性和自学能力。这本书啃完了,真的内心的自信会无比强大,学习其他东西基本没有畏难之意。别说《算法导论》了,当你工作几年就会明白,以下几个任何一个都可以超过90%程序员:3. 把问题好计划和进度跟踪,不把遗留bug到变成事故;4. 思考和分析,如何优化目前的工作流程,引入工具和方法,提升生产效率;5. 把自己工作中用到的技术用熟,搞清楚原理,优点短处,适用场景;6. 不断接触新技术思想和工具,完善自身知识体系结构;7. 深入学习至少一个常用开源项目,源码层面系统掌握这项技术;8. 持续坚持学习和技术内容输出,每个星期产出1篇原创技术文章;弄懂《算法导论》,超过90%的人,也没什么好骄傲的。90%的程序员,都是不做不学成天抱怨的混子。超过他们,只能说明你不是混子而已。