欢迎光临澳大利亚新华书店网 [登录 | 免费注册]

    • Python数据结构与算法(第3版)/前沿技术系列丛书
      • 作者:编者:(英)巴桑特·阿加尔瓦尔|责编:孙兴芳|译者:罗倩倩
      • 出版社:北京航空航天大学
      • ISBN:9787512443198
      • 出版日期:2025/05/01
      • 页数:343
    • 售价:51.6
  • 内容大纲

        本书主要讲解Python全部的数据结构和最常见的算法。通过本书的学习,读者将学会创建复杂的数据结构,例如链表、栈、堆、队列、树和图,以及排序,包括冒泡排序、插入排序、堆排序和快速排序。本书还描述了各种选择算法,例如随机选择和确定性选择,并提供了对各种数据结构算法和设计范例的详细讨论,例如贪心算法、分而治之和动态规划。此外,通过易于理解的图片示例解释了复杂的数据结构,例如树和图的概念。读者还将学习各种重要的字符串处理和模式匹配算法,例如KMP和Boyer-Moore算法以及它们在Python中的易于实现的方法。本书可作为使用Python进行编程的软件工程师和学习Python语言的相关人员的参考用书。
  • 作者介绍

  • 目录

    第1章  Python数据类型与结构
      1.1  Python 3.10简介
      1.2  Python安装
        1.2.1  Windows操作系统
        1.2.2  Linux操作系统
        1.2.3  Mac操作系统
      1.3  设置Python开发环境
        1.3.1  通过命令行设置
        1.3.2  通过Jupyter Notebook进行设置
      1.4  数据类型和对象
      1.5  基本数据类型
        1.5.1  数值类型
        1.5.2  布尔类型
        1.5.3  序列类型
        1.5.4  成员运算符、身份运算符和逻辑运算符
        1.5.5  元组
      1.6  复杂数据类型
        1.6.1  字典
        1.6.2  集合
      1.7  Python的集合模块
        1.7.1  命名元组
        1.7.2  双端队列
        1.7.3  有序字典
        1.7.4  默认字典
        1.7.5  ChainMap
        1.7.6  计数器对象
        1.7.7  UserDict
        1.7.8  UserList
        1.7.9  UserString
      1.8  总结
    第2章  算法设计导论
      2.1  算法简介
      2.2  算法的性能分析
        2.2.1  时间复杂度
        2.2.2  空间复杂度
      2.3  渐进符号
        2.3.1  θ符号
        2.3.2  O符号
        2.3.3  Ω符号
      2.4  平摊分析
      2.5  组合复杂度类别
      2.6  计算算法的运行时间复杂度
      2.7  总结
      练习
    第3章  算法设计技术和策略
      3.1  算法设计技术
      3.2  递归
      3.3  分治法
        3.3.1  二分查找
        3.3.2  归并排序

      3.4  动态规划
      3.5  贪婪算法
      3.6  总结
      练习
    第4章  链表
      4.1  数组
      4.2  链表简介
      4.3  单链表
        4.3.1  创建和遍历
        4.3.2  追加元素
        4.3.3  查询列表
        4.3.4  删除元素
      4.4  双链表
        4.4.1  创建和遍历
        4.4.2  追加项
        4.4.3  查询列表
        4.4.4  删除元素
      4.5  循环链表
        4.5.1  创建和遍历
        4.5.2  添加元素
        4.5.3  查询列表
        4.5.4  删除循环链表中的元素
      4.6  链表的实际应用
      4.7  总结
      练习
    第5章  栈和队列
      5.1  栈
        5.1.1  通过数组实现栈
        5.1.2  使用链表实现栈
        5.1.3  推入操作
        5.1.4  弹出操作
        5.1.5  查看操作
        5.1.6  栈的应用
      5.2  队列
        5.2.1  Python的基于列表的队列
        5.2.2  基于链表的队列
        5.2.3  基于栈的队列
        5.2.4  队列的应用
      5.3  总结
      练习
    第6章  树
      6.1  术语
      6.2  二叉树
        6.2.1  节点的实现
        6.2.2  树的遍历
        6.2.3  表达式树
      6.3  二叉搜索树
        6.3.1  二叉搜索树的操作
        6.3.2  二叉搜索树的优点
      6.4  总结

      练习
    第7章  堆和优先队列
      7.1  堆
        7.1.1  插入操作
        7.1.2  删除操作
        7.1.3  删除堆中特定位置的元素
        7.1.4  堆排序
      7.2  优先队列
      7.3  总结
      练习
    第8章  哈希表
      8.1  简介
        8.1.1  哈希函数
        8.1.2  完美哈希函数
      8.2  解决冲突
      8.3  实现哈希表
        8.3.1  在哈希表中存储元素
        8.3.2  扩展哈希表
        8.3.3  从哈希表中检索元素
        8.3.4  测试哈希表
        8.3.5  将哈希表实现为字典
        8.3.6  分离链接法
      8.4  符号表
      8.5  总结
      练习
    第9章  图和算法
      9.1  图
        9.1.1  有向图和无向图
        9.1.2  有向无环图
        9.1.3  加权图
        9.1.4  二分图
      9.2  图的表示
        9.2.1  邻接表
        9.2.2  邻接矩阵
      9.3  图遍历
        9.3.1  广度优先搜索
        9.3.2  深度优先搜索
      9.4  其他有用的与图相关的方法
        9.4.1  最小生成树
        9.4.2  Kruskal的最小生成树算法
        9.4.3  Prim的最小生成树算法
      9.5  总结
      练习
    第10章  搜索
      10.1  简介
      10.2  线性搜索
        10.2.1  无序线性搜索
        10.2.2  有序线性搜索
      10.3  跳跃搜索
      10.4  二分搜索

      10.5  插值搜索
      10.6  指数搜索
      10.7  选择搜索算法
      10.8  总结
      练习
    第11章  排序
      11.1  技术要求
      11.2  排序算法
      11.3  冒泡排序算法
      11.4  插入排序算法
      11.5  选择排序算法
      11.6  快速排序算法
      11.7  快速排序算法的实现
      11.8  Timsort算法
      11.9  总结
      练习
    第12章  选择算法
      12.1  技术要求
      12.2  按排序选择
      12.3  随机选择
      12.4  确定性选择
      12.5  总结
      练习
    第13章  字符串匹配算法
      13.1  技术要求
      13.2  字符串符号和概念
      13.3  模式匹配算法
      13.4  暴力算法
      13.5  Rabin-Karp算法
      13.6  Knuth-Morris-Pratt算法
        13.6.1  prefix函数
        13.6.2  理解Knuth-Morris-Pratt算法
        13.6.3  实现Knuth-Morris-Pratt算法
      13.7  Boyer-Moore算法
      13.8  总结
      练习
    附录  练习答案
      第2章  算法设计导论
      第3章  算法设计技术和策略
      第4章  链表
      第5章  栈和队列
      第6章  树
      第7章  堆和优先队列
      第8章  哈希表
      第9章  图和算法
      第10章  搜索
      第11章  排序
      第12章  选择算法
      第13章  字符串匹配算法