
前言
从你开始学习编程的那一刻起,就注定了以后所要走的路:从编程学习者开始,依次经历实习生、程序员、软件工程师、架构师、CTO等职位的磨砺;当你站在职位顶峰的位置时蓦然回首,会发现自己的成功并不是偶然,在程序员的成长之路上会有不断修改代码、寻找并解决Bug、不停测试程序和修改项目的经历;不可否认的是,只要你在自己的开发生涯中稳扎稳打,并且善于总结和学习,最终将会得到可喜的收获。
■为什么要学习数据结构
解决一个问题有很多种方法,但有些方法会比其他方法更好,学习数据结构和算法就是学习高质量的解决方案。著名的瑞士计算机科学家沃思(N.Wirth)教授一语中的:编程的本质是算法,而算法的本质是解决问题。程序设计的实质是对实际问题设计/选择好的数据结构和好的算法。
数据结构是计算机运行体系中任何信息都必须遵守的生成与存储规则,尤其是在编程语言的设计中,更体现着程序员对数据理解的透彻程度,其与算法的有效结合,对于提升代码的运行效率,降低程序功耗至关重要。
■本书的特色
(1)以“入门到精通”的写作方法构建内容,让读者入门容易
为了使读者能够完全看懂本书的内容,本书遵循“入门到精通”基础类图书的写法,循序渐进地讲解这门开发语言的基本知识。
(2)实例教学,经典并深入
本书以实例教学为导向,通过具体实例讲解了Python语言框架下数据结构的基本知识和核心用法。通过这些具体实例的讲解和剖析,帮助读者真正掌握Python数据结构的精髓和实践技能。
(3)视频讲解,二维码布局全书
本书正文的每一个二级目录都有一个二维码,通过扫描二维码可以观看讲解视频,既包括实例讲解也包括教程讲解,对读者的开发水平实现了拔高处理。
(4)售后答疑帮助读者快速解决学习问题
无论书中的疑惑,还是在学习中的问题,笔者将在第一时间为读者解答问题,笔者更希望通过交流了解读者的实际需求和本书的不足之处,以期提升图书品质。
(5)QQ群实现教学互动,形成互帮互学的朋友圈
为了方便给读者答疑,特提供了QQ群(通过QQ:729017304获得)随时在线与读者互动,让大家在互学互帮中形成一个良好的学习编程的氛围。
■本书的内容
本书通过学习笔记的形式(概念+实现思路+实战演练)循序渐进、由浅入深地详细讲解了Python语言数据结构的核心知识,全书共9章,分别讲解了数据结构基础、算法、Python内置的几种数据结构、线性表、队列和栈、树、图、数据结构的查找算法以及数据结构的排序算法。全书通过具体实例的实现过程,演练了各个知识点的具体使用方法和注意事项,引领读者全面掌握数据结构的核心技术。
■整体下载包
为了方便不同网络环境的读者学习,也为了提升图书的附加价值,笔者将书中44个扫码视频和源代码整理成整体下载包,读者可以通过封底二维码和下载链接获取学习。
备用网盘下载地址:https://pan.baidu.com/s/le1QrxwbYgdz4mrBUA-DZQw
提取码:7upg
售后服务QQ:3099797600
■本书的读者对象
本书以学习笔记的形式系统讲解了数据结构的核心知识,重点阐述了Python语言实践中的数据结构特点和实用技能,旨在帮助有一定经验的初级程序员扎实理解数据结构原理及其在编程实践中的重要性,并通过大量经典演练案例迅速积累经验,提升编程能力。
■致谢
本书在编写过程中,得到了中国铁道版社有限公司编辑的大力支持,正是各位编辑的求实、耐心和效率,才使得本书能够在这么短的时间内出版。另外,也十分感谢笔者的家人给予的巨大支持。由于水平有限,书中存在纰漏之处在所难免,诚请读者提出宝贵的意见或建议,以便修订并使之更臻完善。
最后感谢您购买本书,希望本书能成为您编程路上的领航者,祝您阅读快乐!
张清云
2020年12月