新書推薦:
《
DK月季玫瑰百科
》
售價:HK$
210.6
《
为你想要的生活
》
售價:HK$
66.1
《
关键改变:如何实现自我蜕变
》
售價:HK$
77.3
《
超加工人群:为什么有些食物让人一吃就停不下来
》
售價:HK$
99.7
《
历史的教训(浓缩《文明的故事》精华,总结历史教训的独特见解)
》
售價:HK$
62.7
《
不在场证明谜案(超绝CP陷入冤案!日本文坛超新星推理作家——辻堂梦代表作首次引进!)
》
售價:HK$
58.2
《
明式家具三十年经眼录
》
售價:HK$
524.2
《
敦煌写本文献学(增订本)
》
售價:HK$
221.8
|
編輯推薦: |
每章都有用Python实现该章内容的案例。
附录给出了软件考试与软件竞赛、图论相关模块、更多数据类型和习题答案。
传统的数据结构教材“重理论轻代码”,往往只是给出伪代码,而本书的代码都用Python实现。
采用Python 3版本,所有程序都在Anaconda中进行调试和运行。
|
內容簡介: |
《数据结构与算法(Python版)》讲述了Python语言与数据结构。主要内容包括数据结构与算法、Python开发环境、Python数据类型、Python三大结构、函数、线性表、树和二叉树、图、查找、排序、异常处理与调试等。
《数据结构与算法(Python版)》内容精炼、由浅入深,注重学习的连续性和渐进性,适合作为高等院校相关专业教材或教学参考书,也可作为计算机技术人员的应用参考书,还可作为全国计算机等级考试、软件技术资格与水平考试的培训资料。
|
目錄:
|
前言
第1章数据结构与算法
11程序
12数据结构
121数据结构的核心地位
122数据结构的组成
13算法
131算法的5个属性
132算法的3个层次
14算法复杂度
141空间复杂度
142时间复杂度
143提高算法效率的方法
15算法表示方式
151流程图
152N-S图
153伪语言
16习题
第2章Python开发环境
21Python简介
211Python的特点
212Python的应用场合
22Python解释器
221Ubuntu下安装Python
222Windows下安装Python
23Python编辑器
231IDLE
232PyCharm
233Anaconda
234Jupyter Notebook
24代码书写规则
241缩进
242逻辑行与物理行
243注释
244编码风格
25习题
第3章Python数据类型
31变量
311变量命名
312变量引用
32运算符
321算术运算符
322关系运算符
323赋值运算符
324逻辑运算符
325位运算符
326成员运算符
327身份运算符
33表达式
331表达式的概念
332运算符的优先级
34数据类型
341数据类型的概念
342数据类型的分类
35数值
351数值的概念
352数值的操作
36列表
361列表的概念
362列表的操作
37元组
371元组的概念
372元组的操作
38字符串
381字符串的概念
382字符串的操作
39字典
391字典的概念
392字典的操作
310集合
3101集合的概念
3102集合的操作
3103集合运算
311组合数据总结
3111相互关系
3112数据类型转换
312实例
3121发扑克牌
3122统计相同单词出现的次数
3123计算两个日期间隔天数
313习题
第4章Python三大结构
413种基本结构
42顺序结构
421输入、处理和输出
422顺序程序设计举例
43选择结构
431单分支
432双分支
433多分支
434分支嵌套
44循环概述
441循环结构
442循环分类
45while语句
451基本形式
452else 语句
453无限循环
46for语句
461应用序列类型
462内置函数range
47循环嵌套
471循环嵌套的概念
472循环嵌套实现
48辅助语句
481break语句
482continue语句
483pass语句
49迭代器
491iter方法
492next方法
410实例
4101猴子吃桃问题
4102买地铁车票
4103打印金字塔
4104冰雹数列
4105输出特定三角形
411习题
第5章函数
51函数声明与调用
511函数声明
512函数调用
513函数返回值
52参数传递
521实参与形参
522传对象引用
53参数分类
531必备参数
532默认参数
533关键参数
534不定长参数
54两类特殊函数
541lambda函数
542递归函数
55变量作用域
551局部变量
552全局变量
56实例
561筛选法求素数
562可逆素数
563递归求xn
564孪生素数
565汉诺塔
566完全数
567逆置
568气温上升最长天数
569兔子上楼梯
57习题
第6章线性表
61线性表的相关概念
62线性表的存储
621线性存储
622链式存储
63单链表操作
631单链表的概述
632单链表的操作实现
64栈
641栈的相关概念
642栈的操作
65队列
651队列的相关概念
652队列的操作
66字符串
661字符串的相关概念
662字符串的操作
67实例
671斐波那契数列
672判断回文数
673模式匹配
674字符串统计
675Anagrams问题
676年龄问题
677恺撒密码
68习题
第7章树和二叉树
71树和二叉树的概述
711树和二叉树的相关概念
712二叉树的性质
72二叉树存储
721顺序存储
722链式存储
73二叉树遍历
731先序遍历
732中序遍历
733后序遍历
734层序遍历
74由遍历序列创建二叉树
741由先序、中序推出后序遍历
742由中序、后序推出先序遍历
743由先序、后序推出中序遍历
75二叉树的创建
76哈夫曼树
761哈夫曼编码
762哈夫曼算法
77树和二叉树的关系
771树的存储
772树与二叉树转换
78实例
781打印二叉树深度
782打印二叉树左右视图
783二叉树左右交换
784括号组合
785对称二叉树
79习题
第8章图
81图的概述
811图的相关概念
812NetworkX库
82图的存储
821邻接矩阵
822邻接表
83图的遍历
831深度优先遍历
832广度优先遍历
84最小生成树
841克鲁斯卡尔(Kruskal)算法
842普里姆(Prim)算法
85最短路径
851迪杰斯特拉Dijkstra算法
852弗洛伊德(Floyd)算法
86实例
861旅游路线
862单词搜索
87习题
第9章查找
91查找算法
92基于线性表查找
9
|
內容試閱:
|
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,带有各种库,在大数据、数据分析、科学计算等方面功能卓越。本书讲述了Python与数据结构,主要内容包括数据结构与算法、Python开发环境、Python数据类型、Python三大结构、函数、线性表、树和二叉树、图、查找、排序、异常处理与调试等。学习本书内容后,建议完成数据结构课程设计。附录给出了软件考试与软件竞赛、图论相关模块、更多数据类型和习题答案。
本书具有如下特点:①代码详解。传统的数据结构教材“重理论轻代码”,往往只是给出伪代码,而本书的代码都用Python实现。②图文并茂。本书利用Python语言的特性,如使用Python的deque讲解栈、networkX讲解图论,使得数据结构算法可视化,从而便于学生更快地掌握数据结构的思想,提高学生的编程应用开发能力。③突出实用性。本书每章都有用Python实现该章内容的案例。
西安邮电大学郝羽、李晓戈、孟伟君、高巍然和孔韦韦等阅读了部分手稿。作为西安邮电大学ACM教练,本书与众多同行交流,ACM亚洲区第一训练委员会主任吴永辉、桂林电子科技大学王子民、华东交通大学周娟、北京化工大学刘勇、中国石油大学(华东)张学辉、太原理工大学林福平、中南民族大学刘卫平,以及机械工业出版社郝建伟等对本教材的写作大纲、写作风格等提出了很多宝贵意见,西安邮电大学ACM集训队杨晨磊、张天泰、黄文丰、黄昊、江永文等调试了部分代码。衷心感谢各位的支持和帮助。
本书在写作过程中参阅了大量中英文的专著、教材、论文、报告及网上的原创文章,由于篇幅所限,未能一一列出,在此,一并表示敬意和衷心的感谢。
本书内容精炼、文字简洁、结构合理、实训题目经典实用、综合性强,特别适合作为高等院校相关专业教材或教学参考书,也可供计算机技术人员参考。本书采用Python 3版本,所有程序都在Anaconda中进行调试和运行。由于作者水平有限,时间紧迫,本书难免存在疏漏之处,恳请广大读者批评指正。
|
|