×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
无数据结构和算法基础Python语言实现

无数据结构和算法基础Python语言实现

1星价 ¥56.1 (7.1折)
2星价¥56.1 定价¥79.0
暂无评论
图文详情
  • ISBN:9787301316542
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:324
  • 出版时间:2020-12-01
  • 条形码:9787301316542 ; 978-7-301-31654-2

本书特色

1. 新颖:模块化的编程,程序分步运行与讲解。 2. 直观:300多幅图表,辅助分析,一看就懂。 3. 易用:例程代码可在浏览器中直接运行,代码注释详尽,拿来就用。 4. 实用:30多种算法,60多个实例,覆盖面广。

内容简介

本书首先介绍算法的概念和特点,然后学习数据结构,再逐步深入学习各类算法,通过解决实际问题加深理解。本书选取近年来比较热门的语言Python作为载体,来实现算法的功能。这不但可以让读者系统地学习算法的相关知识,而且还能加深对Python语言的应用。 本书分为7章,涵盖的主要内容包括:算法简介;Python基础;数据结构;数学相关算法;排序算法;查找算法;图相关算法。其中对经典算法进行了详细的讲解,比如归并排序,快速排序,拓扑排序,二叉查找树,红黑树,很小生成树算法,很短路径算法,极大极小值算法,遗传算法等。很后通过归纳总结,让读者懂得常见算法的设计思路,能够根据实际情况选取合适的算法使用。 本书适合大学生、程序员,以及对数据结构和算法感兴趣的读者阅读。

目录

第1章 从零开始学算法 1

1.1 算法基础知识 21.1.1 什么是算法 2
1.1.2 算法时间复杂度 2
1.1.3 算法空间复杂度 5
1.1.4 算法优劣比较 6


1.2 计算机中如何描述算法 61.2.1 自然语言 7
1.2.2 流程图 7
1.2.3 伪代码 8
1.2.4 挑战:这个月有多少天 8


1.3 Python概述 101.3.1 Python简介 10
1.3.2 环境搭建 11
1.3.3 开发工具介绍 15
1.3.4 单元测试 22


1.4 总结 252

第2章 数据结构 27


2.1 数组 282.1.1 定义 28
2.1.2 挑战1:海盗船生存大考验 30
2.1.3 挑战2:必胜的游戏 32


2.2 链表 372.2.1 定义 37
2.2.2 挑战:国王的继承人 43


2.3 队列 452.3.1 定义 45
2.3.2 挑战:维修报警器 48


2.4 栈 502.4.1 定义 51
2.4.2 挑战1:和机器人做朋友 52
2.4.3 挑战2:让机器人帮你检查作业 54


2.5 哈希表 562.5.1 定义 56
2.5.2 挑战:基因研究 62


2.6 树 642.6.1 定义 65
2.6.2 二叉树 66
2.6.3 二叉查找树 71
2.6.4 挑战:画一棵好看的“树” 75


2.7 图 782.7.1 定义 79
2.7.2 图的表示 79
2.7.3 图的遍历 82
2.7.4 挑战:“一笔画完”小游戏 86


2.8 总结 913

第3章 数 学 92


3.1 进制转换 93
3.2 基本概念 933.2.1 十进制 93
3.2.2 二进制 93
3.2.3 八进制和十六进制 93
3.2.4 进制转换 94
3.2.5 挑战:网络攻击 98


3.3 数学运算 1003.3.1 内置函数 100
3.3.2 Math库模块 101
3.3.3 排列组合 102
3.3.4 矩阵运算 102
展开全部

节选

简单来说,算法是解决问题的方法与步骤。算法不仅指加减乘除等算术运算,而且包括做任何事情的计算法则,即一个解决问题的通用方法。我们可以把它想象为一个菜谱、一本说明手册、一条公式。例如,想用豆浆机做豆浆,通常步骤如下。 (1)打开豆浆机盖子。 (2)倒入约800mL 的水。 (3)倒入约200g 的黄豆。 (4)盖上盖子。 (5)通电,按“开始”按钮。 (6)等到绿色灯亮,豆浆做好,可以放适量的糖。 通过以上步骤,就解决了做豆浆的问题,这就是一个方法。现实生活中的方法与程序中的算法略有不同,程序算法更为严谨,不会出现描述比较模糊的部分,如约、适量等,它们都是用数学方式来描述,非常精准。算法的5 个特性如下。 (1)输入(Input):算法必须有输入量,用以刻画算法的初始条件(特殊情况下也可以没有输入量,这时算法本身定义了初始状态)。 (2)输出(Output):算法应有一个或一个以上的输出量,输出量是算法计算的结果。没有输出的算法毫无意义。 (3)明确性(Definiteness):算法的描述必须无歧义,以保证算法的实际运行结果精确匹配要求或期望。通常也要求实际运行结果是确定的。 (4)有限性(Finiteness):算法必须在有限个步骤内完成任务。 (5)有效性(Effectiveness):算法中描述的操作都可以通过已经实现的基本运算执行有限次来实现(又称可行性)。

作者简介

陈良旭,毕业于法国国立高等应用电子学院(ENSEA),获得计算机工程师文凭,曾在ETIS实验室研究LDPC算法。现任职于佛山珠江传媒大数据科技有限公司,从事数据分析工作,研究方向有舆情监控、数据纠错等。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航