展开全部

主编推荐语

让你轻松学会、爱不释手的Python算法书。

内容简介

编程的核心是算法,学习算法不仅能教会你解决问题的方法,而且还能为你今后的发展提供一种可能。

本书面向算法初学者,首先介绍当下流程的编程语言Python,详细讲解了Python语言的变量和顺序、分支、循环三大结构,以及列表和函数的使用,为之后学习算法打好基础。然后以通俗生动的语言讲解了双指针、哈希、深度优先、广度优先、回溯、贪心、动态规划和最短路径等经典算法。

目录

  • 版权信息
  • 作者简介
  • 前言
  • 第1章 编程基础
  • 1.1 变量
  • 1.1.1 输出和输入
  • 1.1.2 简单变量类型
  • 1.1.3 数学计算
  • 1.1.4 位运算
  • 1.1.5 使用字符串
  • 1.2 三大结构
  • 1.2.1 循序结构
  • 1.2.2 分支结构
  • 1.2.3 条件判断
  • 1.2.4 应用分支结构
  • 1.2.5 循环结构
  • 1.2.6 continue和break
  • 1.2.7 应用循环结构
  • 1.2.8 结构的嵌套
  • 1.3 列表
  • 1.3.1 定义列表
  • 1.3.2 对元素进行操作
  • 1.3.3 列表的顺序
  • 1.3.4 列表内置函数
  • 1.3.5 截取和拼接列表
  • 1.3.6 字符串、元组和列表
  • 1.3.7 用循环遍历列表
  • 1.3.8 字典简介
  • 1.4 函数
  • 1.4.1 定义子函数
  • 1.4.2 主函数
  • 1.4.3 调用函数
  • 1.4.4 全局变量
  • 1.4.5 函数的运用
  • 第2章 双指针问题
  • 2.1 数组合并
  • 2.1.1 合并有序数组
  • 2.1.2 最终代码
  • 2.2 二分查找
  • 2.2.1 什么是二分查找
  • 2.2.2 问题求解
  • 2.2.3 最终代码
  • 2.3 链表
  • 2.3.1 什么是单链表
  • 2.3.2 建立单链表
  • 2.3.3 建立双链表
  • 2.3.4 双向输出双链表
  • 2.3.5 向单链表中添加元素
  • 2.3.6 向双链表中添加元素
  • 2.3.7 删除列表中的元素
  • 第3章 哈希算法
  • 3.1 什么是哈希
  • 3.2 两个数的和
  • 3.2.1 问题求解1
  • 3.2.2 解法1的最终代码
  • 3.2.3 问题求解2
  • 3.2.4 解法2的最终代码
  • 3.3 单词模式匹配
  • 3.3.1 问题求解
  • 3.3.2 最终代码
  • 3.4 猜词游戏
  • 3.4.1 问题求解
  • 3.4.2 最终代码
  • 3.5 神奇的词根
  • 3.5.1 问题求解
  • 3.5.2 最终代码
  • 第4章 深度优先遍历算法
  • 4.1 什么是深度优先遍历
  • 4.2 二叉树
  • 4.2.1 二叉树的类型
  • 4.2.2 二叉树的相关术语
  • 4.2.3 二叉树的节点代码
  • 4.2.4 二叉树的遍历顺序
  • 4.2.5 深度优先遍历与广度优先遍历
  • 4.3 怎么抓住小偷
  • 4.3.1 解题思路
  • 4.3.2 从思路到代码
  • 4.4 二叉树中的最大路径和
  • 4.4.1 解题思路
  • 4.4.2 完整代码
  • 4.5 最大的岛屿
  • 4.5.1 解题思路
  • 4.5.2 完整代码
  • 第5章 广度优先遍历算法
  • 5.1 什么是广度优先遍历
  • 5.2 选课的智慧
  • 5.2.1 广度优先遍历
  • 5.2.2 问题求解
  • 5.2.3 最终代码
  • 5.3 寻找制高点
  • 5.3.1 问题求解
  • 5.3.2 集合
  • 5.3.3 最终代码
  • 5.4 合法的括号
  • 5.4.1 问题求解
  • 5.4.2 最终代码
  • 5.5 树的右侧
  • 5.5.1 问题求解
  • 5.5.2 最终代码
  • 第6章 回溯算法
  • 6.1 什么是回溯
  • 6.2 遍历所有排序方式
  • 6.2.1 问题求解
  • 6.2.2 最终代码
  • 6.3 经典问题的组合
  • 6.3.1 问题求解
  • 6.3.2 最终代码
  • 6.4 查找单词问题
  • 6.4.1 问题求解
  • 6.4.2 最终代码
  • 6.5 八皇后问题
  • 6.5.1 问题求解
  • 6.5.2 最终代码
  • 6.6 教你解数独
  • 6.6.1 问题求解
  • 6.6.2 最终代码
  • 第7章 贪心算法
  • 7.1 硬币找零问题
  • 7.1.1 问题描述
  • 7.1.2 最终代码
  • 7.2 活动安排问题
  • 7.2.1 问题描述
  • 7.2.2 最终代码
  • 7.3 哈夫曼编码
  • 7.3.1 问题描述
  • 7.3.2 哈夫曼树
  • 7.3.3 贪心选择性质
  • 7.3.4 最优子结构性质
  • 7.3.5 最终代码
  • 第8章 动态规划算法
  • 8.1 爬楼梯问题
  • 8.1.1 问题描述
  • 8.1.2 最终代码
  • 8.2 矿工挖矿问题
  • 8.2.1 问题描述
  • 8.2.2 最终代码
  • 8.3 背包问题
  • 8.3.1 问题描述
  • 8.3.2 问题实例
  • 8.3.3 最终代码
  • 8.4 最长递归子序列问题
  • 8.4.1 问题描述
  • 8.4.2 改进算法
  • 8.4.3 最终代码
  • 第9章 最短路径问题
  • 9.1 迪可斯特朗算法
  • 9.1.1 术语释义
  • 9.1.2 问题示例:最短公交线路
  • 9.1.3 图与节点的定义
  • 9.1.4 把图用代码“画”出来
  • 9.1.5 算法核心:两个节点集合
  • 9.1.6 算法核心:循环
  • 9.1.7 输出路线
  • 9.1.8 通过示例理解算法
  • 9.1.9 完整代码展示
  • 9.2 Floyd算法
  • 9.2.1 算法核心:两个矩阵
  • 9.2.2 算法核心:通过中介点缩短距离
  • 9.2.3 通过示例理解算法
  • 9.2.4 完整代码
  • 9.3 A*算法
  • 9.3.1 算法核心:迪可斯特朗算法
  • 9.3.2 算法核心:预估函数
  • 9.3.3 算法核心:选择预估函数
  • 9.3.4 A*算法的兄弟们
  • 第10章 分治算法
  • 10.1 什么是分治
  • 10.2 归并排序
  • 10.2.1 递归法与迭代法
  • 10.2.2 递归法描述
  • 10.2.3 迭代法描述
  • 10.2.4 最终代码
  • 10.3 连续子列表的最大和
  • 10.3.1 解题思路
  • 10.3.2 最终代码
  • 10.4 几何问题之凸包
  • 10.4.1 问题求解
  • 10.4.2 最终代码
  • 10.5 数学问题之多项式乘法
  • 10.5.1 问题求解
  • 10.5.2 最终代码
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

电子工业出版社

电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。