学好程序员必知必会的数据结构,这一份书单你值得拥有!

智数漫游者说
• 阅读 597

关注公众号“程序员书单”

加个“星标”,每天带你读好书!

学好程序员必知必会的数据结构,这一份书单你值得拥有!

学习编程,数据结构是你必须要掌握的基础知识,那么数据结构到底是什么呢?

其实数据结构就是用来描述计算机里存储数据的一种数学模型,因为计算机里要存储很多乱七八糟的数据,所以也需要不同的数据结构来描述。

了解了基本概念之后,接下来我们再来看看,为什么我们要学习数据结构呢?

在许多类型的程序的设计中,数据结构的选择是一个基本的设计考虑因素。许多大型系统的构造经验表明,系统实现的困难程度和系统构造的质量都严重的依赖于是否选择了最优的数据结构。许多时候,确定了数据结构后,算法就容易得到了。有些时候事情也会反过来,我们根据特定算法来选择数据结构与之适应。不论哪种情况,选择合适的数据结构都是非常重要的。

选择了数据结构,算法也随之确定,是数据而不是算法是系统构造的关键因素。这种洞见导致了许多种软件设计方法和程序设计语言的出现,面向对象的程序设计语言就是其中之一。也就是说,选定数据结构往往是解决问题的核心,比如我们做一道算法题,往往就要先确定数据结构,再根据这个数据结构去思考怎么解题。

如果没有数据结构的基础知识,也就没有谈算法的意义了,很多时候即使你会使用一些封装好的编程api,但你却不知道其背后的实现原理,比如hashmap,linkedlist这些Java里的集合类,实际上都是JDK封装好的基础数据结构。

所以,对于程序员来说,数据结构是绕不过的一个基础,今天我们要推荐的就是一份能够帮助大家学好数据结构的书单。

数据结构书单

学好程序员必知必会的数据结构,这一份书单你值得拥有!

大话数据结构

《大话数据结构》为超级畅销书《大话设计模式》作者程杰潜心三年推出的扛鼎之作!以一个计算机教师教学为场景,讲解数据结构和相关算法的知识。

通篇以一种趣味方式来叙述,大量引用了各种各样的生活知识来类比,并充分运用图形语言来体现抽象内容,对数据结构所涉及到的一些经典算法做到逐行分析、多算法比较。与市场上的同类数据结构图书相比,本书内容趣味易读,算法讲解细致深刻,是一本非常适合自学的读物。

作者简介

程杰,一个被读者誉为很适合写IT技术书的家伙。《大话设计模式》作者。此书07年末出版至今已经简体版印刷9次、繁体版印刷6次,取得了较好的成绩,开创了一种适合国人阅读的趣味讲解IT知识的风格模式。

学好程序员必知必会的数据结构,这一份书单你值得拥有!

趣学数据结构

本书基于C++语言编写,从趣味故事引入算法复杂性计算及数据结构基础内容,涵盖线性结构、树形结构和图形结构,包括链表、栈和队列、树和图的应用等。本书内容还涉及数据结构的基本应用(包括各种查找、排序等)和高级应用(包括优先队列、并查集、B-树、B+树和红黑树等)。

通过大量图解将抽象数据模型简单通俗化,语言表述浅显易懂,并结合有趣的实例帮助读者轻松掌握数据结构。

作者简介

陈小玉,南阳理工学院副教授,高级程序员,研究方向为智能计算、数据挖掘与机器学习,主要讲授“算法设计与分析”和“人工智能”等课程,多次指导学生获得ACM程序设计大赛亚洲区奖项。

学好程序员必知必会的数据结构,这一份书单你值得拥有!

Python数据结构与算法分析

了解数据结构与算法是透彻理解计算机科学的前提。随着Python日益广泛的应用,Python程序员需要实现与传统的面向对象编程语言相似的数据结构与算法。

本书是用Python描述数据结构与算法的开山之作,汇聚了作者多年的实战经验,向读者透彻讲解在Python环境下,如何通过一系列存储机制高效地实现各类算法。通过本书,读者将深刻理解Python数据结构、递归、搜索、排序、树与图的应用,等等。

【作者介绍】
布拉德利·米勒(Bradley N. Miller)美国路德学院计算机科学名誉教授,曾获美国计算机协会软件系统奖,对Python课程开发有深入研究,由他创立的互动式教科书平台Runestone Interactive与全球600多家教育机构有合作。
戴维·拉努姆(David L. Ranum)IBM Watson认知软件工程师,医学信息学博士,致力于利用自然语言处理等人工智能技术解决医疗问题,曾在美国路德学院讲授计算机科学课程近三十载。

学好程序员必知必会的数据结构,这一份书单你值得拥有!

图解数据结构:使用Java(其他语言版本也有)

这是一本以Java程序语言实战来解说数据结构概念的教材。全书内容浅显易懂,利用大量且丰富的图示与范例,详解复杂的抽象理论,从最基本的数据结构概念开始说明,再以Java工具加以诠释阵列结构、堆栈、链表、队列、排序、查找等重要的概念,引领读者抓住重点轻松进入数据结构的学习领域。

《图解数据结构:使用Java》内容架构完整,逻辑清楚,采用丰富的图例来阐述基本概念及应用,有效提升可读性。以Java程序语言实现数据结构中的重要理论,以范例程序说明数据结构的内涵。采用“Eclipse”Java ID工具,整合编译、执行、测试及除错功能。强调边做边学,结合下载文件,给予最完整的支援。

作者胡昭民,由于作者长期从事信息教育及写作,在文字的表达上简洁明了、逻辑清晰,并安排了大量的习题,供读者检验学习成果。

今日问题

你是如何入门和学习数据结构的呢?

学好程序员必知必会的数据结构,这一份书单你值得拥有!

点赞
收藏
评论区
推荐文章
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Aidan075 Aidan075
4年前
1年前的小五都用 Python 来做什么?
↑点击上方“凹凸数据” 关注星标 每天更新,干货不断  (多图预警)注:这是小五一年前在知乎的回答,当时还只有凹凸数读一个公众号,所以很多图片都会带有数读或者知乎的水印。作为一个菜鸟数据分析师,只会sqlpython业余时间写写文章:用python爬取数据→数据清洗→数据分析→数据可视化词云镇楼20190730回来看,前面
Stella981 Stella981
4年前
GitHub两天标星2.1K+!自动刷喵币靠这一个脚本就够了.....
公众号关注“杰哥的IT之旅”,选择“星标”,重磅干货,第一时间送达!!(https://oscimg.oschina.net/oscnet/f0c3939b141b4b91bc4d410bfe0e5976.jpg)大家好,我是JackTian。在正式开始之前,跟大家分享一个之前的文章:程序员自动刷淘宝充能量到爆,就靠这
Stella981 Stella981
4年前
Python 常见优化技巧,让你的程序溜溜的跑起来!
点击蓝色“Python空间”关注我丫加个“星标”,每天一起快乐的学习!(https://oscimg.oschina.net/oscnet/fc8a9052a7f4c0d30122fa3e1caceeb5a7a.jpg)来源:https://www.ibm.com/developerworks/cn/linux/lcnpython
Wesley13 Wesley13
4年前
8个月打磨,一份送给程序员的「分布式系统」合集
_如果第二次看到我的文章,欢迎「文末」扫码订阅我个人的公众号(跨界架构师)哟~__每周五早8点按时送达到公众号。当然了,也会时不时加个餐~_是的,这份礼物最佳受众是程序员。但是,如果你不是程序员,相信这些能使你更懂程序员,能更好的与他们交流。有些小伙伴们应该知道了,之前的《分布式系统关注点——360°的全方位监控
Stella981 Stella981
4年前
60个Chrome神器插件大收集:助你快速成为老司机,一键分析网站技术栈
点击蓝色“Python空间”关注我丫加个“星标”,每天一起快乐的学习!(https://oscimg.oschina.net/oscnet/49dbdb348f72afaae96153b798de73f1532.jpg)乾明编辑整理 量子位 报道 |公众号 QbitAI让WebP图片下载为PNG格式,从G
Stella981 Stella981
4年前
Docker 部署SpringBoot项目不香吗?
  公众号改版后文章乱序推荐,希望你可以点击上方“Java进阶架构师”,点击右上角,将我们设为★“星标”!这样才不会错过每日进阶架构文章呀。  !(http://dingyue.ws.126.net/2020/0920/b00fbfc7j00qgy5xy002kd200qo00hsg00it00cj.jpg)  2
Stella981 Stella981
4年前
200的大额人民币即将面世?央行:Yes!
点击上方蓝字关注我们!(https://oscimg.oschina.net/oscnet/2a1c2ac00bf54458a78c48a6c2e547d5.png)点击上方“印象python”,选择“星标”公众号重磅干货,第一时间送达!!(
Wesley13 Wesley13
4年前
BAT 鼎立格局被打破,2019 年这些互联网公司是程序员跳槽首选!
点击上方“程序员江湖”,选择“置顶或者星标”你关注的就是我关心的!!(https://oscimg.oschina.net/oscnet/3a919fd0b2b4441ea3f05371910126dd.jpg)作者:BOSS直聘来源:BOSS直聘作者:BOSS直聘(ID:bosszhipin),领
可莉 可莉
4年前
200的大额人民币即将面世?央行:Yes!
点击上方蓝字关注我们!(https://oscimg.oschina.net/oscnet/2a1c2ac00bf54458a78c48a6c2e547d5.png)点击上方“印象python”,选择“星标”公众号重磅干货,第一时间送达!!(
Easter79 Easter79
4年前
StackOverflow程序员推荐:每个程序员都应读的30本书
“如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本,你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西。”很多程序员响应,他们在推荐时也写下自己的评语。以前就有国内网友介绍这个程序员书单,不过都是推荐数Top10的书。其实除了前10本之外,推荐数前30左右的书籍都算经典,伯乐在线整理编译这个问答贴,同时摘