⑴ 想自学数据结构,请问买什么书好
一:介绍
《数据结构与算法》以基本数据结构和算法设计策略为知识单元,系统地介绍了数据结构的知识与应用、计算机算法的设计与分析方法,主要内容包括线性表、树、图和广义表、算法设计策略以及查找与排序算法等。《数据结构与算法》注重理论与实践相结合,内容深入浅出,可以作为高等院校计算机学科相关专业的教材或参考书,同时对计算机科技工作者也有参考价值。
二:内容提要
本书是国家级双语教学示范课程《数据结构》的配套教材,根据教育部高等学校计算机科学与技术教学指导委员会制定的《高等学校计算机科学与技术专业发展战略研究报告暨专业规范》编写。全书每章均以数据的逻辑结构、存储结构和相应的算法实现为主线,并对算法的运算效率进行分析。全书分为8章,涵盖了各种常见数据结构。第1章主要介绍数据结构和算法分析的基本概念,第2~6章主要介绍典型的线性结构、树型结构和图型结构,第7~8章分别介绍查找和排序操作。
另外,每章后面附有习题和上机实验内容,上机实验提供了完整的、可运行的程序上机实验供读者参考,以加深读者对所学知识的理解和应用。
本书既可作为高等院校计算机及相关专业数据结构课程的教学用书,也可作为从事计算机工程与应用的广大读者的参考书。
三:目录
第1章绪论1
1.1数据及其逻辑结构1
1.1.1基本概念1
1.1.2逻辑结构2
1.2数据结构2
1.2.1什么是数据结构2
1.2.2数据结构的二元组描述3
1.2.3数据结构和数据类型4
1.3存储实现与运算实现4
1.3.1顺序存储结构4
1.3.2链式存储结构5
1.3.3索引存储结构6
1.3.4散列存储结构6
1.3.5运算实现7
1.3.6进一步讨论8
1.4算法描述和算法分析8
1.4.1什么是算法8
1.4.2算法描述9
1.4.3算法分析11
1.5网络教辅资源14
1.6小结14
练习一15
第2章线性表19
2.1线性表的基本概念19
2.2线性表的顺序表示和实现21
2.3线性表的链接表示和实现26
2.3.1线性表的链式存储原理27
2.3.2线性表的链式存储算法实现27
2.3.3算法效率分析32
2.4循环链表和双链表32
2.4.1循环链表32
2.4.2双向链表33
2.5线性表的应用举例35
2.5.1问题的提出35
2.5.2分析问题36
2.5.3算法实现36
2.5.4程序39
2.6小结44
练习二45
第3章栈和队列54
3.1栈54
3.1.1栈的定义54
3.1.2栈的基本运算54
3.1.3栈的顺序存储结构55
3.1.4栈的链式存储结构58
3.1.5栈的应用60
3.2队列63
3.2.1队列的定义63
3.2.2队列的基本运算63
3.2.3队列的顺序存储结构64
3.2.4队列的链式存储结构68
3.2.5队列的应用72
3.3小结74
练习三75
第4章串和数组79
4.1串的基本概念79
4.2串的基本操作和串的存储结构80
4.2.1串的基本操作80
4.2.2串的静态顺序存储结构81
4.2.3串的动态顺序存储结构87
4.2.4串的链式存储结构91
4.3数组的定义和运算92
4.4数组的顺序存储结构92
4.5特殊矩阵的压缩存储94
4.5.1特殊矩阵95
4.5.2稀疏矩阵96
4.6小结103
练习四104
第5章树和二叉树110
5.1树的概念与定义110
5.1.1树的定义110
5.1.2树的基本操作111
5.2二叉树的性质和存储结构111
5.2.1二叉树的定义与基本操作111
5.2.2二叉树的性质112
5.2.3二叉树的存储结构114
5.3二叉树的遍历与线索化116
5.3.1二叉树的遍历116
5.3.2二叉树的非递归遍历119
5.3.3树的唯一性问题120
5.3.4二叉树遍历的应用121
5.3.5线索二叉树124
5.4树、森林和二叉树的关系126
5.4.1树的存储结构127
5.4.2树、森林与二叉树的相互转换129
5.4.3树与森林的遍历132
5.5哈夫曼树及其应用133
5.5.1哈夫曼树的定义133
5.5.2哈夫曼树的构造134
5.5.3哈夫曼编码135
5.6小结137
练习五139
第6章图146
6.1图的定义及理论146
6.2图的存储结构及算法实现149
6.2.1图的基本运算的抽象149
6.2.2数组表示法150
6.2.3邻接表表示154
6.2.4十字链表表示160
6.3图的算法实现162
6.3.1图的遍历算法162
6.3.2图的连通性166
6.4图的应用167
6.4.1图的最小生成树167
6.4.2最短路径171
6.4.3任意顶点最短路径175
6.5小结176
练习六177
第7章查找表183
7.1查找表的基本概念183
7.2静态查找表184
7.2.1顺序查找184
7.2.2折半查找187
7.2.3分块查找190
7.3动态查找表192
7.3.1二叉排序树192
7.3.2平衡二叉树199
7.4哈希表200
7.4.1哈希表的基本概念201
7.4.2哈希函数的构造方法202
7.4.3处理哈希冲突的方法206
7.5小结209
练习七210
第8章内部排序217
8.1排序的基本概念217
8.1.1排序217
8.1.2内部排序和外部排序218
8.1.3排序算法评价218
8.1.4排序算法的稳定性218
8.1.5待排序记录序列的存储结构218
8.2直接插入排序和希尔排序218
8.2.1直接插入排序219
8.2.2折半查找插入排序222
8.2.3希尔排序223
8.3选择排序和堆排序225
8.3.1选择排序226
8.3.2堆排序227
8.4冒泡排序和快速排序229
8.4.1冒泡排序229
8.4.2快速排序231
8.5归并排序235
8.6基数排序236
8.6.1基本思想236
8.6.2基数排序过程与算法237
8.7各种内部排序方法的比较讨论241
8.8外部排序243
8.8.1外部存储系统243
8.8.2外部排序面临的问题246
8.8.3外部排序的基本过程246
8.9小结247
练习八248
⑵ java数据结构书籍推荐
1. 入门级
针对刚入门的同学,建议不要急着去看那些经典书,像《算法导论》、《算法》这些比较经典、权威的书。虽然书很好,但看起来很费劲,如果看不完,效果会很不好。所以建议先看两本入门级的趣味书:
《大话数据结构》
《算法图解》
大话数据结构
将理论讲的很有趣,不枯燥。作者结合生活中的例子去对每个数据结构和算法进行讲解,让人通俗易懂。
算法图解
这是一本像小说一样有趣的算法入门书,书中有大量的图解,通俗易懂。
看完上面一本或两本入门级的书,你就会对数据结构和算法有个大概认识和学习。但这些入门级的书缺少细节、不够系统。所以想要深入的学习数据结构和算法,光看这两本书肯定是不够的。
2. 不同语言的教科书
国内外很多大学都是将《数据结构和算法分析》作为教科书。这本书非常系统、严谨、全面,难度适中,很适合对数据结构和算法有些了解,并且已经掌握了至少一门语言的同学学习。针对不同的语言,分别有:
《数据结构与算法分析:C语言描述》
《数据结构与算法分析:C++描述》
《数据结构与算法分析:java语言描述》
如果你不会C、C++、java,会Python或者JavaScript,可以看:
《数据结构与算法JavaScript描述》
《数据结构与算法:Python语言描述》
3. 面试书籍
现在很多大厂的面试都会考算法题,这里推荐几本面试算法书籍:
《剑指offer》
《编程珠玑》
《编程之美》
剑指offer
为面试算法量身定做的一本书。几乎包含了所有常见的、经典的面试题,如果能搞懂书里面的内容,一般公司的算法面试都应该没问题。
编程珠玑
这本书豆瓣评分有9分,评分很高。这本书最大的特色是讲了很多海量数据的处理技巧。其他算法书籍很少涉及海量数据。
编程之美
有些作者是微软工程师,算法题目较难,比较适合要面试Google、Facebook这样的公司的人去看。
4. 经典书籍
现在数据结构与算法最经典的书籍就是:
《算法导论》
《算法》
《计算机程序设计艺术》
这三本书非常经典,但都很厚,看起来比较费劲,估计很少有人能全部看完。但如果想更深入地学一遍数据结构和算法,还是建议去看看。
算法导论
章节安排不是循序渐进,里面有各种算法正确性、复杂度的证明、推导,对数学功底有一定要求,看起来有些费劲。
算法
偏重讲算法。内容不够全面,对数据结构方面的知识讲的不多,动态规划这么重要的知识点却没有讲。
计算机程序设计艺术
这本书包括很多卷,相比于其他书籍有更好的深度、广度、系统性和全面性。但如果你对数据结构和算法不是特别感兴趣,没有很好的数学、算法、计算机基础,很难把这本书读完、读懂。
5. 课外阅读
有些算法书籍也比较适合在平时悠闲的时候翻翻看看:
《算法帝国》
《数学之美》
《算法之美》
这些书都列举了大量的列子来解释说明,非常通俗易懂。
⑶ 数据结构课本哪本好啊
这几本没多大差别,老书的话是中间那本,几年前的都是用的那本。
主要信息:
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。
严蔚敏(1938.04—),女,汉族。清华大学计算机系教授,长期从事数据结构教学和教材建设,和吴圆薯旁手雀伟民合作编着的《数据结构》曾获“第二届普通高等学校优秀教材全国特等奖”和“1996年度国家科学技术进步奖三等奖”。
和吴伟民合作编着的《数据结构》、橘橡《数据结构题集》第一版曾获“第二届普通高等学校优秀教材全国特等奖”、 1996年《数据结构》、《数据结构题集》教材获国家科技进步三等奖, “数据结构”课程连续三次被清华大学评定为一类课。
⑷ 数据结构(c语言版)有什么参考书
推荐《数据结构》(c语言版)(清华大学出版社,严蔚敏,吴伟民编着)教材。
《清华大学计算机系列教材:数据结构(C语言版)》的第1章综述数据、数据结构和抽象数据类型等基本概念;第2章至第7章从抽象数据类型的角度,分别讨论线性表、栈、队列、串、数组、广义表、树和二叉树以及图等基本类型的数据结构及其应用。
第8章综合介绍操作系统和编译程序中涉及的动态存储管理的基本技术。
第9章至第11章讨论查找和排序,除了介绍各种实现方法之外,并着重从时间上进行定性或定量的分析和比较;第12章介绍常用的文件结构。
本书可作为计算机类专业或信息类相关专业的本科或专科教材。
⑸ 数据结构方面,你认为最好的书是哪本
结合大神的推荐,我来说说吧!
简介:书中详细介绍了当前流行的论题和新的变化,讨论了算法设计技巧,并在研究算法的性能、效率以及对运行时间分析的基础上考查了一些高级数据结构,从历史的角度和近年的进展对数据结构的活跃领域进行了简要的概括。
特点:
以一种有趣的叙事方式,大量的知识做各种生活的类推,并充分利用图形语言来体现抽象的内容,一些经典的数据结构算法通过线条的分析来实现,算法更是如此。与市场上类似的数据结构书籍相比,这本书的内容很容易阅读,而且算法细致而深刻,是一篇很好的自学读物。
总结:看书只是其中的一种方式,更多的方式还在于平时多加练习,多加实践,知识是书本上的,只有转化成你自己的,才是真正有效的,尤其是当你实践过一段时间再回头看的话,你会发现收获很多!
⑹ 学习数据结构,有哪些值得推荐的好书
作者:向小刚
链接:https://www.hu.com/question/19987046/answer/13945644
来源:知乎
着作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
1. CLRS 算法导论
算法网络全书,只做了前面十几章的习题,便感觉受益无穷。
2. Algorithms 算法概论
短小精悍,别据一格,准经典之作。一个坏消息: 同算法导论,该书没有习题答案。好消息:习题很经典,难度也适中,只需花点点时间自己也都能做出来。不好也不坏的消息:我正在写习题的答案,已完成前三章,还剩九章约二百道题,顺利的话二个月之后发布。另有中文版名《算法概论》,我没看过,不知道翻译得怎么样。如果有心的话,还是尽量看原版吧,其实看原版与看中文版花费时间不会相差很大,因为大部分时间其实都花费在做习题上了。
dr. dobb's essential books on Algorithm and daba structure
3. Algorithm Design 算法设计
很经典的一本书,很久之前看的,遗憾的是现在除了就记得它很经典之外其它都忘光了。
4. SICP 计算机程序的构造和解释
六星之书无需多言,虽然这不是一本讲算法的书,但看完此书有助于你更深入的理解什么是递归。我一直很强调习题,看完此书后你至少应该做完前四章的太部分习题。否则那是你的遗憾,也是作者的遗憾。
5. Concrete Mathematics 具体数学
有人说看TAOCP之前应该先弄清楚这本书的内容,要真是如此的话那我恐怕是看不到TAOCP了。零零碎碎的看了一大半,很多东西都没有时间来好好消化。如果你是刚进大学不久的本科生,有着大把的可自由支配时间,那你幸运又幸福了,花上几个月时间好好的读一下此书吧,收获绝对大于你的期望值。
6. Introction to The Design and Analysis of Algorithms 算法设计与分析基础
很有趣的一本算法书,有许多在别的书上找不到的趣题,看完此书绝对能让你大开眼界,实在是一本居家旅行,面试装逼的必备佳作。
7. 编程之美--微软技术面试心得
虽说是一本面试书,但如果把前面十几页扯掉的话,我更愿意把它看作是一本讲解题思维的算法小品。在书中,作者通常是给出一个平常解法,然后再一次又一次的优化改进,你可以很清楚的看到基本的算法设计思想是如何得到运用以解决实际问题的。如果你已经有了一些算法的基础,看完本书应该能使你的算法应用能力得到一定的提高。另外,本书生动有趣,也同样适合于初学者。
8. Fundamentals of Algorithmics 算法基础
也是很久之前在学校图书馆借来看的,内容记不太清楚了,只隐约记得此书的动态规划章节犹为出彩。应该是很经典的一本书,个人以为足以和算法导论等所谓当世经典平分秋色,但是怎么好像被人提到的不多,或许是我孤陋寡闻了。
9. How to solve it 怎样解题
二十世纪最伟大的数学思想家之一波利亚的力作,讲一般性的解题方法:怎么认识问题,怎么转换问题,怎么解决问题,如何在问题中得到启发,如何找到一个通往答案的方向。
10. Programming interviews exposed 程序员面试攻略
一本消遣之作。个人以为要比国内的某“XXX面试宝典”纯粹一些,至少也有一些启发性的内容,而不单单是面试题解库。
11. Programming Pearls 编程珠玑
学习算法不仅需要像Alogrithms,算法导论这样的重量级的内功心法,像《编程之美》、《编程珠玑》这样的轻量级的轻功身法也必不可少。前些年网上不是很流行像“给你10亿个数,找到最大的n个”或者“给你10亿个数,找出现次数最多的那个数”之类的网络面试题吗?看了此书你就知道怎么解决了。相比于《编程之美》来说,本书中的示例技巧性略低一些,但是也更有实际应用价值一些。
12. 算法艺术与信息学竞赛
如果算法导论是九阳神功,那这本无疑就是九阴真经。本书是专为参加一些诸如ACM之类程序设计比赛的同学而写的,江湖人称“黑书”。里面讲的都是一些在编程比赛中常用的算法、数据结构,以及一些数论和计算几何等。我虽然并不搞竞赛,但也从此书中受益颇多。
13. An Introction to Probability Theory and Its Applications
准备看的,现在才发现概率论有多么重要,可惜本科的时候没有好好学。前不久一个同学问我个问题,我半天弄了一个程序给他,他说:这里就不是相关系数么,Excel一下就完事!我晕,我还真不知道那就是相关系数。
14. Numerical Analysis
这本的作者是Richard L. Burden,J. Douglas Faires
数值分析,讨论各种数值算法,比如插值、拟合、积分、微分方程的求解、线性和非线性方程组求解等。准备详细看。
15. TAOCP 计算机程序设计艺术
传说中的TAOCP,说的人多,看的人少。TAOCP四卷堪称是算法藏经阁中的易筋经或者是少林七十二绝技。天下武学,尽出少林,天下算法,尽出TAOCP也。
⑺ 计算机考研数据结构参考哪些书
1.教材:《数据结构》严蔚敏 清华大学出版社
清华大学严蔚敏的这本数据结构的教材是国内数据结构教材的权威。也是国内使用最广,其广度远远超越其他同类教材,计算机考研专业课命题必定以它为蓝本。这一本数据结构是2007年的最新版本,完全适合任何学校的考研数据结构的复习之用,是数据结构学习最权威的教材。
2.辅导书:《算法与数据结构考研试题精析(第二版)》机械工业出版社
网上广为流传的数据结构1800题相信只要是计算机考研的同学无人不知无人不晓。其实1800题是2001年推出来的,当时编者把电子版免费分享给大家,却很少有人知道它也有纸质版本就是《算法与数据结构考研试题精析》。第二版是2007年最新出版的,对里面的题目进行了大量的更新,去掉了一些比较过时和重复的题,加上了很多名校最近几年的考研真题,总共大约1650题左右。真题就是训练的最好武器,相信当你复习完这本数据结构辅导书后,任何关于数据结构的考题都是小菜一碟。
⑻ 数据结构哪本书好
问题一:数据结构选哪本书比较好? 严蔚敏 陈文博编着 数据结构算法教程 清华大学出版社
这本书比较好读。
如果要翻译教材,可以参考 算法导论,经典!
问题二:数据结构用哪本书复习好 数据结构教材方面最无争议,最权威的就是严蔚敏的,是公认的,同时,大纲也基本上以此书为蓝本的,如果你不想绕弯路的话,建议还是严蔚敏的。对于我们计算机本专业的,严蔚敏的讲的是最基础,最经典,同时也是比较好理解的,当然,也许你跨专业的,刚接触,可能比较难一些,不怕,多看几遍就好了。P.S. 你的问题不是出在数据结构的教材上,而是C语言的基础上,伪代码无论哪本书都有,关键是你必须有C语言的基础,或氏所以,建议你先补补C语言的语法规则等相关知识,有了基础再说,不要急于开始专业课的复习,舍本逐末…… 查看原帖>>
问题三:数据结构选哪本书比较好? 《数据结构》(C语言版) 严蔚敏编着 经典
问题四:数据结构哪本书比较详细,比较好? 国内的一般都会说是严蔚敏老师的那本,你只搜索严蔚敏数据结构就有了!注:是严蔚敏和吴伟民和着的
问题五:请问学数据结构这两本书哪本好 我学的是《数据结构》(严蔚敏) 并且都是以类c语言介绍的 而且我们老师也说了这本书很经典 他们当年学的就是这本 这么多年几乎都没动了(貌似只改了改排版和错别字)
问题六:数据结构入门看那本书比较好 清华大学出版的那本蓝色的数据结构课本,还有配套的习题集和答案
问题七:计算机考研数据结构下面两本书哪本比较好? 第一本那个,机械出版社的不错
我就用的那个
我记不清有没有详弊闭解了,就算没有详解,也可以问同学问老师啊,多跟人交流一下,反而印象更深,对题目了解更全面。。
有什么不明白可以继续问,随时在线等。
如果我的回答对你有帮助,请及时选为满意答案,谢谢~~
问题八:学数据结构用哪本教材好 既然是C和C++培训,推荐你用《数据结构(C语言版)》 清华大学计算系列教材 严蔚敏 吴伟民编着
图书目录
第1章 绪论
第2章 线性表
第3章 栈和队列
第4章 串
第5章 数组和广义表
第6章 树和二叉树
第7章 图
第8章 动态存储管理
第9章 查找
第10章 内部排序
第11章 外部排序
第12章 文件
附录
问题九:数据结构与算法哪本书比较好 如果你已经对程序有一些了解的话(比如已经学习过c或者其他类似的语言,个人比较推荐《算法导论》。这本书是经典中的经典,而且比较浅显易懂,很厚重,在学习之余也可以作为工具书来使用。我有一本已经呆在身租团裂边3年了,到现在也还是觉得很好。
问题十:学Java 有必要看数据结构的书吗?如果是,那么哪本书比较好 如果你在校大学生的话,而且学的是编程的专业,都会有一门数据结构的课,如果不是在学校自己也要简单了解,不建议去看那些数据结构导论什么的.推荐看大话数据结构