数据结构是相互之间存在的一种或多种特定关系的数据元素的集合。包括4类基本的结构,集合、线形结构、树形结构、图状或网状结构。内在含义是数据的逻辑结构,比方说这些数据在内存中以什么样的结构存放。算法实际是编程过程中完成一件事采用的方法,例如现实生活中做数学题时两个人都将题完成,但是他们之间有一个用的时间很短。这样的例子是因为采用了简便的方法。如果在编程过程中采用好的算法也可以降低程序的时空复杂度。观看斯坦福和MIT,这两种网易公开课,对数据结构与算法的学习有很大的帮助。
java数据结构与算法的书,哪本好
坦率的讲,我觉得如果你能将清华大学的严蔚敏女士等编写的
《数据结构》中的算法全部用JAVA写一遍,那么你就无需再要
刻意找《java数据结构与算法》这一类的书了,而且这对于你
以后合理使用JAVA类库提供的算法也是极有帮助的。
所有完备的编程语言都是相通的,关键看对算法的掌握程度。
这是我个人的一点看法,也可以算是经验。
祝你好运!
大学学数据结构,用哪本教材比较好?
数据结构主要研究组织大量数据的方法,而算法分析则是对算法运行时间的评估。随着计算机的速度越来越快,对于能够处理大量输入数据的程序的需求变得日益急切。可是,由于在输入量很大的时候,程序的低效率现象变得非常明显,因此这又要求对效率问题给予更仔细的关注。通过在实际编程之前对算法的分析,学生可以决定一个特定的解法是否可行。例如,学生在本书中将读到一些特定的问题并看到精心的实现方法是如何把对大量数据的时间限制从16年减至不到1秒的。因此,若无运行时间的阐释,就不会有算法和数据结构的提出。
我所选择的教材是《数据结构与算法分析——C语言描述》(原书第2版),英文版的名称是《Data Structures and Algorithm Analysis in C》,作者是:(美)Mark Allen Weiss。原书曾被评为20世纪顶尖的30部计算机著作之一。之所以选这本书,还因为它的简体中文版翻译得相当不错,几乎没有给我的阅读带来什么障碍。^_^
这本教科书所使用的是C语言,也许很多人会说C语言已经过时了,但是,我认为在数据结构的学习中,应该用尽量简单的语言,以免进入了语言的细枝末节中,反而冲淡了主题。实际上在国外的许多大学中(甚至中学),数据结构和算法分析的课程是选用Scheme的,例如MIT麻省理工大学极其著名的SICP课程。呵呵,语言又能说明什么呢?
书中详细介绍了当前流行的论题和新的变化,讨论了算法设计技巧,并在研究算法的性能、效率以及对运行时间分析的基础上考查了一些高级数据结构,从历史的角度和近年的进展对数据结构的活跃领域进行了简要的概括。由于本书选材新颖,方法实用,题例丰富,取舍得当。本书的目的是培养学生良好的程序设计技巧和熟练的算法分析能力,使得他们能够开发出高效率的程序。从服务于实践又锻炼学生实际能力出发,书中提供了大部算法的C程序和伪码例程,但并不是全部。一些程序可从互联网上获得。
本书是《Data Structures and Algorithm Analysis in C》一书第2版的简体中译本。原书曾被评为20世纪顶尖的30部计算机著作之一,作者Mark Allen Weiss在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的著作尤其畅销,并受到广泛好评.已被世界500余所大学用作教材。
在本书中,作者更加精炼并强化了他对算法和数据结构方面创新的处理方法。通过C程序的实现,着重阐述了抽象数据类型的概念,并对算法的效率、性能和运行时间进行了分析。
全书特点如下:
●专用一章来讨论算法设计技巧,包括贪婪算法、分治算法、动态规划、随机化算法以及回溯算法
●介绍了当前流行的论题和新的数据结构,如斐波那契堆、斜堆、二项队列、跳跃表和伸展树
●安排一章专门讨论摊还分析,考查书中介绍的一些高级数据结构
●新开辟一章讨论高级数据结构以及它们的实现,其中包括红黑树、自顶向下伸展树。treap树、k-d树、配对堆以及其他相关内容
●合并了堆排序平均情况分析的一些新结果
本书是国外数据结构与算法分析方面的标准教材,介绍了数据结构(大量数据的组织方法)以及算法分析(算法运行时间的估算)。本书的编写目标是同时讲授好的程序设计和算法分析技巧,使读者可以开发出具有最高效率的程序。 本书可作为高级数据结构课程或研究生一年级算法分析课程的教材,使用本书需具有一些中级程序设计知识,还需要离散数学的一些背景知识。
哪本《数据结构与算法》最好
如果是自己真的想学好数据结构,以便日后从事程序员这个行业的话,推荐下面两本:
<数据结构与算法分析:C语言描述(原书第2版>
算法(第4版) [Algorithms Fourth Edition]
如果只是想期末考试通过的话,那就用学校老师推荐的吧,做做作业,考试前复习复习就行了
哪些学习数据结构与算法的书籍值得推荐
如果是想入门,推荐程杰的《大话数据结构》,没有太多的生搬硬套,语言幽默风趣,口语化的说教。很难想象在公交车或者地铁上读严蔚敏的数据结构,但是我的的确确在地铁上(半个小时),读完了程杰兄两章《大话》。
自学c语言中的数据结构与算法,看哪些书比较好?
大学计算机数据结构教材是 严蔚敏版的《数据结构》可以拿来入门。然后可以根据自己的实际情况来安排怎么样学习数据结构。很多人是看一遍书,然后在遇到算法之后再去实现它。在这里列出一些我知道的算法书籍,以供参考。(我也只看过算法导论,编程之美)
1 CLRS 算法导论
算法百科全书,只做了前面十几章的习题,便感觉受益无穷。
2 Algorithms 算法概论
短小精悍,别据一格,准经典之作。一个坏消息: 同算法导论,该书没有习题答案。好消息:习题很经典,难度也适中,只需花点点时间自己也都能做出来。不好也不坏的消息:我正在写习题的答案,已完成前三章,还剩九章约二百道题,顺利的话二个月之后发布。另有中文版名《算法概论》,我没看过,不知道翻译得怎么样。如果有心的话,还是尽量看原版吧,其实看原版与看中文版花费时间不会相差很大,因为大部分时间其实都花费在做习题上了。
作者:向小刚
链接:>
哪本数据结构与算法最好?
自学c语言中的数据结构与算法,我把它分为入门,巩固,应用,提高,进化这几个阶段,不同阶段可以看不同书籍。
《数据结构与算法分析——C语言描述》 ,一般大学普遍教程。
《算法设计与分析》
《算法引论》
《Elements of Programming》
《C Interfaces and Implementation》
这个相关书籍貌似没得,可以自己是一些功能,如下:
《Algorithm Design Manual》
《The Science of Programming》
《编程珠玑》
《Algorithms 4th》
《Advanced Data Structures》
如果你想成为一个码农或是熟练工(Code Monkey),你大可以不学算法,因为算法对你确实没有用;但如果你想成为一个优秀的开发者(Developer),扎实的算法必不可少,因为你会不断的掉进一些只能借助算法才能爬出去的坑里。所以,骚年加油把。
国外很多经典的
(因为以前搞ACM时都是用的C/C++,所以推荐的都是偏这块的)
算法导论就不说了,图文并茂。
数据结构与算法分析 (豆瓣) C
数据结构与算法分析 (豆瓣) C++
数据结构与算法分析 (豆瓣) 同上本,英文版
Weiss 的这几本书都不错,如果想顺便学 C++ Template,建议看C++版的(后两本)
个人觉得最适合入门的应该是Robert Sedgewick的《Algorithms》,这本书也有中文版,Coursera上有相应的视频:
算法,第一部分:Coursera - Free Online Courses From Top Universities
算法,第二部分:Coursera - Free Online Courses From Top Universities
还有本书配套网站:>