Python数据结构与算法分析

Python数据结构与算法分析

  • 大小:10.4 MB
  • 类型:Python
  • 格式:PDF
  • 出版:人民邮电出版社
  • 作者:布拉德利·米勒
  • 更新:2019-10-29 09:31:50
vip 免费获取(已有102人参与)
关注公众号免费送书
版权投诉 / 资源反馈(本资源由用户 宫天逸 投稿)

若把撰写代码比成急行军打战,那麼要想独霸战场,不可以光靠手上的尖刀,还需深得古语。Python是一把尖刀,数据结构与优化算法则是古语。只能通读古语,才可以使尖刀无坚不摧。《 Python数据结构与算法分析第2版 》是用Python叙述数据结构与优化算法的劈山之作,聚集了创作者很多年的项目经验。根据学习培训这书,你将把握数据结构与优化算法的基础观念,进而有自信心探寻一切编译程序难点的解决方案。-应用Python保持栈、序列、目录等抽象数据类型-把握大O记法和时间复杂度等定义-运用递归处理汉诺塔问题-保持常见的搜索算法和排序算法,并剖析特性-把握树与图在Python中的运用书籍每章內容常有配套设施训练,协助你尽快把握所教內容;对于Python新版本全新升级重做,全部的代码全是应用Python3.x写出;将全部的数据结构源代码都放到一个Python包中,便捷用户在进行工作时应用;有关配套设施資源请至图灵社区免费下载。 掌握数据结构与优化算法是明白了解电子信息科学的前提条件。伴随着Python日渐普遍的运用,Python程序猿必须保持与传统式的面向对象编程言语类似的数据结构与优化算法。这书是用Python叙述数据结构与优化算法的劈山之作,聚集了创作者很多年的项目经验,向用户明白解读在Python自然环境下,怎样根据一系列储存体制高效率地保持各种优化算法。根据这书,用户将深刻领会Python数据结构、递归、检索、排列、树与图的运用,这些。 目录 第1章 导论 1 1.1 本章目标 1 1.2 入门 1 1.3 何谓计算机科学 1 1.3.1 何谓编程 3 1.3.2 为何学习数据结构及抽象数据类型 4 1.3.3 为何学习算法 4 1.4 Python基础 5 1.4.1 数据 5 1.4.2 输入与输出 16 1.4.3 控制结构 18 1.4.4 异常处理 21 1.4.5 定义函数 23 1.4.6 Python面向对象编程:定义类 24 1.5 小结 37 1.6 关键术语 38 1.7 讨论题 38 1.8 编程练习 38 第 2章 算法分析 40 2.1 本章目标 0 2.2 何谓算法分析 40 2.2.1 大O记法 43 2.2.2 异序词检测示例 46 2.3 Python数据结构的性能 49 2.3.1 列表 49 2.3.2 字典 53 2.4 小结 55 2.5 关键术语 55 2.6 讨论题 56 2.7 编程练习 56 第3章 基本数据结构 57 3.1 本章目标 57 3.2 何谓线性数据结构 57 3.3 栈 58 3.3.1 何谓栈 58 3.3.2 栈抽象数据类型 59 3.3.3 用Python实现栈 60 3.3.4 匹配括号 62 3.3.5 普通情况:匹配符号 64 3.3.6 将十进制数转换成二进制数 65 3.3.7 前序、中序和后序表达式 67 3.4 队列 75 3.4.1 何谓队列 75 3.4.2 队列抽象数据类型 75 3.4.3 用Python实现队列 76 3.4.4 模拟:传土豆 77 3.4.5 模拟:打印任务 79 3.5 双端队列 84 3.5.1 何谓双端队列 84 3.5.2 双端队列抽象数据类型 84 3.5.3 用Python实现双端队列 85 3.5.4 回文检测器 86 3.6 列表 88 3.6.1 无序列表抽象数据类型 88 3.6.2 实现无序列表:链表 89 3.6.3 有序列表抽象数据类型 97 3.6.4 实现有序列表 97 3.7 小结 100 3.8 关键术语 101 3.9 讨论题 101 3.10 编程练习 102 第4章 递归 105 4.1 本章目标 105 4.2 何谓递归 105 4.2.1 计算一列数之和 105 4.2.2 递归三原则 107 4.2.3 将整数转换成任意进制的字符串 108 4.3 栈帧:实现递归 110 4.4 递归可视化 111 4.5 复杂的递归问题 116 4.6 探索迷宫 118 4.7 动态规划 123 4.8 小结 128 4.9 关键术语 129 4.10 讨论题 129 4.11 编程练习 129 第5章 搜索和排序 131 5.1 本章目标 131 5.2 搜索 131 5.2.1 顺序搜索 131 5.2.2 二分搜索 134 5.2.3 散列 136 5.3 排序 145 5.3.1 冒泡排序 145 5.3.2 选择排序 147 5.3.3 插入排序 149 5.3.4 希尔排序 151 5.3.5 归并排序 153 5.3.6 快速排序 156 5.4 小结 159 5.5 关键术语 160 5.6 讨论题 160 5.7 编程练习 161 第6章 树 163 6.1 本章目标 163 6.2 示例 163 6.3 术语及定义 166 6.4 实现 168 6.4.1 列表之列表 168 6.4.2 节点与引用 171 6.5 二叉树的应用 173 6.5.1 解析树 173 6.5.2 树的遍历 179 6.6 利用二叉堆实现优先级队列 182 6.6.1 二叉堆的操作 182 6.6.2 二叉堆的实现 183 6.7 二叉搜索树 189 6.7.1 搜索树的操作 190 6.7.2 搜索树的实现 190 6.7.3 搜索树的分析 201 6.8 平衡二叉搜索树 202 6.8.1 AVL树的性能 203 6.8.2 AVL树的实现 204 6.8.3 映射实现总结 210 6.9 小结 211 6.10 关键术语 211 6.11 讨论题 211 6.12 编程练习 213 第7章 图及其算法 214 7.1 本章目标 214 7.2 术语及定义 215 7.3 图的抽象数据类型 216 7.3.1 邻接矩阵 216 7.3.2 邻接表 217 7.3.3 实现 218 7.4 宽度优先搜索 220 7.4.1 词梯问题 220 7.4.2 构建词梯图 221 7.4.3 实现宽度优先搜索 223 7.4.4 分析宽度优先搜索 226 7.5 深度优先搜索 226 7.5.1 骑士周游问题 226 7.5.2 构建骑士周游图 227 7.5.3 实现骑

相关资源

  • 《NS网络模拟和协议仿真》源代码

    《NS网络模拟和协议仿真》源代码

    内容简介 《NS网络模拟和协议仿真》介绍了利用NS软件进行网络模拟和协议仿真的方法,内容既包括NS的安装、Tcl/Otcl语言、NS架构、仿真入门等基础知识,又涵盖了协议的移植、代码调试以及协议开发等有关知识。书中不仅给出了大量具有详尽注解、讨论NS基本功能的源代码程序,而且在人民邮电出版社网站上提供了一个配套的无线Mesh网协议开发和仿真的完整实例以及《NS网络模拟和协议仿真》的示例源代码。 《NS网络模拟和协议仿真》适合利用NS软件从

    大小:66.97 KBNS网络模拟配套资源

  • 《左手数据,右手图表:Excel动态图表制作与职场数据沟通》资料

    《左手数据,右手图表:Excel动态图表制作与职场数据沟通》资料

    封面图 目录 作者自序 前言 第一篇认识篇认识Excel动态图表 第01章数据可视之美2 1.1数据可视化2 1.2数据可视之美4 第02章Excel动态图表5 2.1Excel图表的可视化5 2.2Excel动态图表是什么6 2.3动态图表示例7 2.4Excel动态图表的可视之美9 第03章动态图表与职场沟通11 3.1初识Excel动态图表11 3.2动态图表的沟通价值13 第04章动态图表的工作原理14 4.1动态图表制作的四个构件14 4.2信号发射器与GPS定位15 第二篇准备篇Excel动态

    大小:23.95 MBExcel配套资源

  • 《人气摄影师的Lightroom数码摄影后期处理技法解密》素材

    《人气摄影师的Lightroom数码摄影后期处理技法解密》素材

    内容简介 《人气摄影师的Lightroom数码摄期处理技法解密》是杨比比从事摄影教学20多年来后期处理心得与技法的总结与分享,也是900万网友推荐必学的摄期教程。本书精准地抓住广大摄影爱好者对照片调整的迫切需求,精选了时下流行的增加黑白影像的层次、萤火虫暗部色调处理、人像脸部处理、HDR超现实风格、幻灯片制作、Lightroom制作延时影片等摄影爱好者们都想学的绝妙后期处理技巧,让他们可以在短时间内了解使用Lightroom处理数码照片的相关知识

    大小:1 GBLightroom配套资源

  • 近世代数(前三章)

    近世代数(前三章) 课后答案

    本书主要介绍了近世代数课程的基本内容和思想方法,全书共分五章,分别对群、环、域这三个最基本的代数系统进行了一些讨论。 由于学生在学习近世代数课程时,往往对一些抽象的概念不能很好地理解,因此本书在内容的叙述上力求简洁,对概念的建立与定理的证明尽可能地详细和严谨,使学生能够较好地理解和体会近世代数课程的基本内容和证题方法,同时给出一些具体的例子,以帮助对相关概念和内容的准确掌握和正确理解。 在每节后面都配

    大小:8.38 MB近世代数课后答案

  • 《Linux内核探秘:深入解析文件系统和设备驱动的架构与设计》 源代码

    《Linux内核探秘:深入解析文件系统和设备驱动的架构与设计》 源代码

    本书是内核研发和调试工程师、驱动开发工程师们正确和高效地掌握Linux内核的难得佳作!作者是腾讯公司资深的Linux内核专家和存储系统专家,在该领域工作和研究10余年,期间面试了数百位Linux内核工程师,深知他们在学习Linux内核过程中所遇到的困惑和犯过的错误,作者在此基础上撰写了本书。它在出发点和写作方式上可谓独辟蹊径,从工业需求角度出发,注重效率和实用性,将Linux内核分为基础部分和应用部分以及内核架构和内核实现两个维度,对

    大小:3.29 MBLinux配套资源

  • kubernetes中文指南:云原生应用架构实践手册

    kubernetes中文指南:云原生应用架构实践手册

    Kubernetes是Google根据Borg开源的器皿编辑生产调度模块,做为CNCF(CloudNativeComputingFoundation)最重要的部件之一,它的总体目标不仅是一个编辑系统,只是出示一个标准,能够 给你来叙述群集的构架,界定服务项目的最后情况,kubernetes能够 帮你将系统全自动地做到和保持在这个情况。Kubernetes做为云原生运用的根基,等于一个云实际操作系统,其必要性显而易见。 云原生技术有益于各机构在云计算平台、私有云存储和IT混合云等新式动态性自然环境中,构建

    大小:39.6 MBkubernetes

  • 【Python函数】全部高清学习路线导图

    大小:228 KBPython函数

  • 理解Linux进程

    理解Linux进程

    《 理解Linux进程 》受理解Unix进程启发而作,用极简的篇幅深入学习进程知识。 理解Linux进程用Go重写了所有示例程序,通过循序渐进的方法介绍Linux进程的工作原理和一切你所需要知道的概念。 本书适合所有Linux程序员阅读。 目录 前言 进程基础 Go编程实例 进程进阶 项目实例Run 注意事项 后记

    大小:2.36 MBLinux

参与送书

相关声明:

学习笔记