Ⅰ 《算法导论》与《算法设计》选择哪本更好
总的来说,两本各有所长,建议可以都涉及涉及一下,然后根据自己重点学习哪个。另外我觉得想自学算法,我认为吧,就是看学写无数算法,然后就可以信手拈来的自己去写。同时如果自学算法,我的建议是最好是多思考多动手(可以结合现实当中的各种程序算法,想一下他们怎么用算法写出来的,就比如饭堂里刷卡算钱等等。。如何用算法做到的。。),这样自学就很有意义了。
Ⅱ 算法不扎实的程序员,每一个都很慌
初学者经常问这样的问题,然而这些其实是错误的问题。
对于初学者而言,你最应该优先考虑的是,哪些东西构成了程序的基础?
最经典的一句话: 程序 = 数据结构 + 算法 。
如果说编程语言是程序的血肉,那么算法就是程序的灵魂。
人不能没有血肉之躯,但是没有灵魂的人依然只是一个死人。
不能单纯依靠算法衡量一个程序员的好坏,但是面试的时候考算法绝对是简单高效的筛选手段。近些年大厂的面试几乎必考算法也是这个原因。每一个算法学的不扎实的程序员,在面试的时候都很慌。
下面这些书籍应该是算法方面最常见的经典书籍。我有幸都读过,有些读完了,有些半途而废,不过基本上也都算是熟悉。顺序上由易到难,从薄到厚,每本书下面我会简单的介绍一番,希望能对你的学习有所帮助。
首先是两本算法入门书籍,也可以当做算法读物:
《啊哈!算法》
用他的自我介绍的来讲:“这不过是一本有趣的算法书而已,和别的算法书比较,如果硬要说它有什么特点的话,那就是你能看懂它。”
图文并茂,而且画风有趣,适合新手入门,但是代码是C的,看着比较累,文字也略显冗长。
图是非常棒的,启蒙用,非教科书
《算法图解》
和《啊哈》类似,他的介绍是:“像小说一样有趣的算法入门书。”
书里面讲的很好,python代码也很容易读懂,比之《啊哈!算法》,书中的例子没有那么有趣,但是图很清晰,文字和代码不冗杂。
缺点同样是非教科书,非常浅显,三四个小时就看完了。有一种刚刚热身的感觉。
接下来这几本都是最常见的书了:
《数据结构与算法分析C语言描述》
这本书的作者几乎不浪费笔墨在一些简单的地方。书很薄,但是覆盖面很广很深,作者实在是非常厉害。
不过反过来说,就是有些地方讲的语焉不详……
这本书还有java语言版本的,但是相比之下C的更好一些。
挺好的一本书。
还有一点是翻译不是很给力,好多人都没坚持看完。
《数据结构与算法Python语言实现》
英文版评分非常高,中文版评分非常低……
据说是也翻译的不好。另外就是本书自身错误也不少……几版过后依然很多没有改过来。
书中数学证明和介绍比较简单。因为采用Python语言的原因,比较易读。
浅显易懂,内容上循序渐进,环环相扣。相比于上一本,我会更推荐一些。厚度也不算厚。
《数据结构与算法 Python语言描述》
北大教授裘宗燕的书,这本书前面写的挺好的,尤其是在面向对象还有ADT等思想的阐述,都很不错。
但是读到后来给我一种虎头蛇尾的感觉,前面气势如虹绪论就写了很长,最后三章感觉有点草草收尾的意思。就像编辑在催稿,而作者很忙的样子……
另外就是这本书的编排顺序我个人也不是特别喜欢。
接下来是两本大部头,都是非常厚的书。
他们最大的特点就是:出现率远大于看完率
《算法导论》
算法书中的权威,MIT的6.046J就是按照这个来讲的。
公认最好的算法书,组织结构合理,内容详尽。引导读者从思维方式上对算法进行领悟。
书中对算法的数学结构进行了详尽的阐述。有非常多的数学证明。
这本书我说不出什么缺点,只能说有些内容是因为我还没到大牛的境界,暂时还无法体会理解。
我个人的观点是:不要纠结于详细的伪代码,不用纠结于连篇累牍的讲解。体会其中算法的精髓就好。
《算法》第四版
如果说,《算法导论》是学术上最好书,那这本应该是实际应用最好的书。
它对数学的要求比《算法导论》低很多,摒弃了算法的证明。
书中具体给出了每位程序员应知应会的50个算法,深入浅出,大量图解。非常棒。
java基础的话你能撸出来Hello World基本上就可以开始看这本书了,这本书最大的不友好之处在于它的第一章非常长,没看过的人又不知道哪里可以跳过。
这本书后面的翻译感觉不如前边了,不知道是换人了还是DDL了……
翻开书就会看到很多的图,配套作者在coursera上面的课程学的话事半功倍!
接下来的几本我看的比较少,简单介绍一下,希望大家自己去发现和了解,不要漏下这些好书:
《编程珠玑》
很薄一本啊,但是我放在那还没看完……
这本书被称为: 历史 上最伟大的计算机科学着作之一
融深邃思想、实战技术与趣味轶事于一炉的奇书。
内容不深,但是不是一个知识点一个知识点的给你讲解算法原理的。
这本书的核心思想是让你了解如何正确选择和高效地实现算法。书中还有一些趣闻轶事,看着倒是很有意思~
有兴趣的同学可以看看~
《算法竞赛入门经典》系列
算法竞赛入门经典书,ACM必备书籍吧算是。书中题目对于竞赛来说比较简单,但是对于一般我们平时工程来说偏难。语言用的是C/C++,请好好做例题好好做作业,读书的时候好好思考和复习~
反正我是没读过,捂脸……
《剑指Offer》
这个书很有意思,对于在校生来说我个人觉得是必看的书。没有任何工作经验的同学在面试的时候真的会被问懵的。这本书可以让你了解如何应付考官日常问题,在解答面试问题的时候,书中很多方法和思路会让考官觉得你思考的很全面,给你加不少分。
我面试的时候也曾快速扫过一遍这本书,让我在回答问题的时候条理更清晰。书中代码是C的,emmm,于是代码部分我就没太看……
《用Python解决数据结构与算法问题》
最后给大家推荐一本在线的 免费 的算法书。
https://facert.gitbooks.io/python-data-structure-cn/
不是大部头,也不是读物,新手入门足够用,书中介绍了大多数日常需要的算法,并且讲的比较浅显~转行的新手基本可以通过这本书来快速掌握常用基本算法了~
反正免费,是否适合自己看两页也就get了~
如果需要PDF版,可以在“程序员必修课”公众号后台回复:“Python算法书”获取。
Ⅲ 《算法导论》有什么好的学习心得
《算法导论》自第一版出版以来,已经成为世界范围内广泛使用的大学教材和专业人员的标准参考手册。本书全面论述了算法的内容,从一定深度上涵盖了算法的诸多方面,同时其讲授和分析方法又兼顾了各个层次读者的接受能力。各章内容自成体系,可作为独立单元学习。所有算法都用英文和伪码描述,使具备初步编程经验的人也可读懂。全书讲解通俗易懂,且不失深度和数学上的严谨性。第二版增加了新的章节,如算法作用、概率分析与随机算法、线性编程等,几乎对第一版的各个部分都作了大量修订。
本书深入浅出,全面地介绍了计算机算法。对每一个算法的分析既易于理解又十分有趣,并保持了数学严谨性。本书的设计目标全面,适用于多种用途。涵盖的内容有:算法在计算中的作用,概率分析和随机算法的介绍。本书专门讨论了线性规划,介绍了动态规划的两个应用,随机化和线性规划技术的近似算法等,还有有关递归求解、快速排序中用到的划分方法与期望线性时间顺序统计算法,以及对贪心算法元素的讨论。本书还介绍了对强连通子图算法正确性的证明,对哈密顿回路和子集求和问题的NP完全性的证明等内容。全书提供了900多个练习题和思考题以及叙述较为详细的实例研究。
本书内容丰富,对本科生的数据结构课程和研究生的算法课程都是很实用的教材。本书在读者的职业生涯中,也是一本案头的数学参考书或工程实践手册。
Ⅳ 《算法导论》这本书好么
数学基础很好的话,你可以看看,算法导论重在讲方法,对你会哪门编程语言并不关心,而且算法导论涉及到了很多实际问题,诸如线性规划、RSA、NP完全性、近似解等等,如果非常感兴趣可以看看试试,事在人为嘛,如果要是需要电子版的话,我有哦
话说英文版印刷错误较少,中文第二版个别地方有疏漏,最可恶就是把公式给弄错,有时害我要浪费一些时间找问题
Ⅳ 《算法导论》这本书怎么样该怎么用
我个人觉得属于一本比较全面的传统经典算法的总览。行文论述严谨,更偏理论,要求有一定的高等数学基础。
我建议如果你是算法初学者,或是偏应用者,最好先看看其它算法介绍书。
Ⅵ 算法导论和算法概论 这两个书是一样么 不是的话 那个更好
不一样,算法导论系统的介绍了每种计算机科学里面涉及到的常用算法,里面每种算法都给出了伪代码和相关的原理解释,证明等,他更像是类似字典的一本工具书,在我看来是如此
算法概论这个书不太了解,但是里面好像从最简单的古老算法作为例子开始,最后还介绍了很高端的量子算法。总之我们一般都是用算法导论,这个和我们自己想要学习的东西有关系,没有所谓更好,看你自己的需要而已。
Ⅶ 求算法第四版mobi/azw格式的资源,kindle读的,最好是中文版的,算法导论
你要是有PDF,TXT,world版的我可以给你弄成mobi。
你找这么专业的mobi原版很难找的
Ⅷ 哪位大佬有 《 算法(第4版)》电子版书籍百度网盘资源下载
《 算法(第4版)》网络网盘txt 最新全集下载
链接:
《算法(第4版)》是一本美 Robert Sedgewick / 美Kevin Wayne编写,由人民邮电出版社在2012年出版的书籍。
Ⅸ 请教算法导论这本书怎么样适合什么程度的学习者
适合了解一门或以上编程语言的人,即使你没学过数据结构也没关系,因为它把数据结构中的算法从基础到非常深入全部都包括了,个人建议你先把C语言用熟悉了,然后再去看,算法导论,如果有决心看完,数据结构都不用看,因为你看完算法导论,就等于学会了非常高级的数据结构,但是看完很难。。。
至于C++,可以顺带着学一下,然后用C++自己把算法实现一下,等于练两倍。
也不一定非得学C++,可以学习Java或者C#,看你的发展方向
Ⅹ 算法 第四版 这本书有配套的习题答案吗
1. "我想学好基础的数据结构和算法! "
不多说,有这心就往下看。
2. "我应该准备些什么? "
a. 这本橙书: 《算法 第四版》
--亚马逊中文版: amazon.cn 的页面
--线上资源: Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne
b. 注册Coursera, 依次加入这2门课: <算法, 第一部分> <算法, 第二部分>
Part 1:
Part 2:
如果没开课, 就先标记, 这样开课时会通过邮箱提示你.
3. "我应该做些什么? "
先熟读书内1.1和1.2, 最好把课后习题都做一做. 网站上开课后(即使已经开课几周了, 没关系), 跟住上课内容: 课本知识 + 视频内容 + 课件重点+ Exercises (独立完成且满分) + Programming Assignments (独立完成且尽量满分) + Job Interview Questions. 从Part 1到Part 2, 跟住, 跟住, 跟住!
关于做书后练习题,参见:
算法 第四版(algorithms 4th edition ) 这本书有配套的习题答案吗看 - 孟祥丰的回答
4. "我学完了呢!"
再去跟隔壁斯坦福的算法公开课, 他还给证书! 因为参考书籍基本上就是是《CLRS》, 所以也就是强迫自己去仔细研读算法导论.
---课程名称:
<算法设计与分析, 第一部分>
<算法设计与分析, 第二部分>
---课程地址
Part 1:
Part 2: 2