登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入 新註冊 | 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / EMS,時效:出貨後2-3日

2024年10月出版新書

2024年09月出版新書

2024年08月出版新書

2024年07月出版新書

2024年06月出版新書

2024年05月出版新書

2024年04月出版新書

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

『簡體書』数据结构教程(Python语言描述)

書城自編碼: 3562243
分類: 簡體書→大陸圖書→教材研究生/本科/专科教材
作者: 李春葆,蒋林,李筱驰
國際書號(ISBN): 9787302560289
出版社: 清华大学出版社
出版日期: 2020-11-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:NT$ 419

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
一个人·谁也不是·十万人(诺贝尔文学奖得主反思自我的巅峰之作)
《 一个人·谁也不是·十万人(诺贝尔文学奖得主反思自我的巅峰之作) 》

售價:NT$ 250.0
重写晚明史(全5册  精装)
《 重写晚明史(全5册 精装) 》

售價:NT$ 3560.0
汉末晋初之际政治研究
《 汉末晋初之际政治研究 》

售價:NT$ 602.0
强者破局:资治通鉴成事之道
《 强者破局:资治通鉴成事之道 》

售價:NT$ 367.0
鸣沙丛书·鼎革:南北议和与清帝退位
《 鸣沙丛书·鼎革:南北议和与清帝退位 》

售價:NT$ 551.0
从康德到黑格尔的发展:兼论宗教哲学(英国观念论名著译丛)
《 从康德到黑格尔的发展:兼论宗教哲学(英国观念论名著译丛) 》

售價:NT$ 275.0
突破不可能:用特工思维提升领导力
《 突破不可能:用特工思维提升领导力 》

售價:NT$ 352.0
王阳明大传:知行合一的心学智慧(精装典藏版)
《 王阳明大传:知行合一的心学智慧(精装典藏版) 》

售價:NT$ 1010.0

編輯推薦:
本书提供丰富的配套资源,包括教学大纲、教学课件、电子教案、程序源码、习题答案、教学进度表。
內容簡介:
本书系统地介绍了各种常用的数据结构以及查找和排序的各种算法,阐述了各种数据结构的逻辑关系、存储表示及基本运算,并采用Python语言描述数据组织和算法实现,所有算法的程序均在Python3.7中调试通过。 全书既注重原理又注重实践,配有大量图表和示例,内容丰富,概念讲解清楚,表达严谨,逻辑性强,语言精练,可读性好。
關於作者:
李春葆:武汉大学教授,主要研究方向为数据挖掘和算法设计,从事近30年计算机CC语言、算法设计和算法设计等课程的第一线本科教学工作,具备丰富的教学经验,曾参于深圳名企的笔试和面试题库建设。出版多本CC语言、算法设计、算法设计与分析及数据库开发方面的精品教材和教学辅导书。
目錄
第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.3Python简介
1.3.1Python的标准数据类型
1.3.2列表的复制
1.3.3输入输出和文件操作
1.3.4Python程序设计
1.3.5Python中变量的作用域和垃圾回收
1.4算法分析
1.4.1算法的设计目标
1.4.2算法的时间性能分析
1.4.3算法的存储空间分析
1.5数据结构的目标
1.6练习题
1.7上机实验题
1.8LeetCode在线编程题
第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.4顺序表和链表的比较
2.5线性表的应用两个多项式相加
2.5.1问题描述
2.5.2问题求解
2.6练习题
2.7上机实验题
2.7.1基础实验题
2.7.2应用实验题
2.8LeetCode在线编程题

第3章栈和队列
3.1栈
3.1.1栈的定义
3.1.2栈的顺序存储结构及其基本运算算法的实现
3.1.3顺序栈的应用算法设计示例
3.1.4栈的链式存储结构及其基本运算算法的实现
3.1.5链栈的应用算法设计示例
3.1.6栈的综合应用
3.2队列
3.2.1队列的定义
3.2.2队列的顺序存储结构及其基本运算算法的实现
3.2.3循环队列的应用算法设计示例
3.2.4队列的链式存储结构及其基本运算算法的实现
3.2.5链队的应用算法设计示例
3.2.6Python中的双端队列
3.2.7队列的综合应用
3.2.8优先队列
3.3练习题
3.4上机实验题
3.4.1基础实验题
3.4.2应用实验题
3.5LeetCode在线编程题
第4章串和数组
4.1串
4.1.1串的基本概念
4.1.2串的存储结构
4.1.3串的模式匹配
4.2数组
4.2.1数组的基本概念
4.2.2特殊矩阵的压缩存储
4.2.3稀疏矩阵
4.3练习题
4.4上机实验题
4.4.1基础实验题
4.4.2应用实验题
4.5LeetCode在线编程题
第5章递归
5.1什么是递归
5.1.1递归的定义
5.1.2何时使用递归
5.1.3递归模型
5.1.4递归与数学归纳法
5.1.5递归的执行过程
5.1.6Python中递归函数的参数
5.1.7递归算法的时空分析
5.2递归算法的设计
5.2.1递归算法设计的步骤
5.2.2基于递归数据结构的递归算法设计
5.2.3基于归纳方法的递归算法设计
5.3练习题
5.4上机实验题
5.4.1基础实验题
5.4.2应用实验题
5.5LeetCode在线编程题
第6章树和二叉树
6.1树
6.1.1树的定义
6.1.2树的逻辑结构表示方法
6.1.3树的基本术语
6.1.4树的性质
6.1.5树的基本运算
6.1.6树的存储结构
6.2二叉树
6.2.1二叉树的概念
6.2.2二叉树的性质
6.2.3二叉树的存储结构
6.2.4二叉树的递归算法设计
6.2.5二叉树的基本运算算法及其实现
6.3二叉树的先序、中序和后序遍历
6.3.1二叉树遍历的概念
6.3.2先序、中序和后序遍历的递归算法
6.3.3递归遍历算法的应用
6.4二叉树的层次遍历
6.4.1层次遍历的过程
6.4.2层次遍历算法的设计
6.4.3层次遍历算法的应用
6.5二叉树的构造
6.5.1由先序中序序列或后序中序序列构造二叉树
*6.5.2序列化和反序列化
6.6线索二叉树
6.6.1线索二叉树的定义
6.6.2线索化二叉树
6.6.3遍历线索二叉树
6.7哈夫曼树
6.7.1哈夫曼树的定义
6.7.2哈夫曼树的构造算法
6.7.3哈夫曼编码
6.8二叉树与树、森林之间的转换
6.8.1树到二叉树的转换及还原
6.8.2森林到二叉树的转换及还原
*6.9并查集
6.9.1并查集的定义
6.9.2并查集的实现
6.10练习题
6.11上机实验题
6.11.1基础实验题
6.11.2应用实验题
6.12LeetCode在线编程题
第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.4图遍历算法的应用
7.4.1深度优先遍历算法的应用
7.4.2广度优先遍历算法的应用
7.5生成树和最小生成树
7.5.1生成树和最小生成树的概念
7.5.2普里姆算法
7.5.3克鲁斯卡尔算法
7.6最短路径
7.6.1最短路径的概念
7.6.2狄克斯特拉算法
7.6.3弗洛伊德算法
7.7拓扑排序
7.7.1什么是拓扑排序
7.7.2拓扑排序算法的设计
7.8AOE网和关键路径
7.9练习题
7.10上机实验题
7.10.1基础实验题
7.10.2应用实验题
7.11LeetCode在线编程题
第8章查找
8.1查找的基本概念
8.2线性表的查找
8.2.1顺序查找
8.2.2折半查找
8.2.3索引存储结构和分块查找
8.3树表的查找
8.3.1二叉排序树
8.3.2平衡二叉树
8.3.3B树
8.3.4B 树
8.4哈希表的查找
8.4.1哈希表的基本概念
8.4.2哈希函数的构造方法
8.4.3哈希冲突的解决方法
8.4.4哈希表的查找及性能分析
8.5练习题
8.6上机实验题
8.6.1基础实验题
8.6.2应用实验题
8.7LeetCode在线编程题
第9章排序
9.1排序的基本概念
9.2插入排序
9.2.1直接插入排序
9.2.2折半插入排序
9.2.3希尔排序
9.3交换排序
9.3.1冒泡排序
9.3.2快速排序
9.4选择排序
9.4.1简单选择排序
9.4.2堆排序
9.4.3堆数据结构
9.5归并排序
9.5.1自底向上的二路归并排序
9.5.2自顶向下的二路归并排序
9.6基数排序
9.7各种内排序方法的比较和选择
9.8外排序
9.8.1生成初始归并段的方法
9.8.2多路归并方法
9.9练习题
9.10上机实验题
9.10.1基础实验题
9.10.2应用实验题
9.11LeetCode在线编程题
参考文献
內容試閱
数据结构课程是计算机及相关专业的核心专业基础课程。数据结构是指存在相互关系的数据元素集合,并包含相应的数据运算。从数据结构的应用角度看,人们不必关心数据的存储和运算的具体实现细节,将其作为一个功能包用于求解更复杂的问题,这样能在适当的抽象层次上考虑程序的结构和算法; 从数据结构的实现角度看,则需要考虑数据的逻辑类型,将这些数据以某种合理的方式存储在计算机中,继而高效地实现对应运算的算法。
教学内容设计
数据结构课程主要以数据的逻辑结构为主线,介绍线性表、栈和队列、树和二叉树、图等各种数据结构的实现和应用,一方面培养学生的基本数据结构观,即从逻辑层面理解各种数据结构的逻辑结构特征以及基本运算,继而合理地实现数据结构,使之成为像程序设计语言中那样直接可以使用的数据类型; 另一方面培养学生运用各种数据结构的能力,即针对一个较复杂的数据处理问题选择合适的数据结构设计出好的求解算法。
本书围绕这两个目标设计教学内容,总结编者长期在教学第一线的教学研究和教学经验,同时参考近年来国内外出版的多种数据结构教材,考虑教与学的特点,合理地进行知识点的取舍和延伸,精心组织编写而成。本书采用Python语言描述数据结构和算法。本书由9章构成,各章的内容如下:
第1章绪论。本章介绍数据结构的基本概念、采用Python语言描述算法的方法和特点、算法分析方法和如何设计算法等。
第2章线性表。本章介绍线性表的定义、线性表的两种主要存储结构和各种基本运算算法设计,最后通过示例讨论线性表的应用。
第3章栈和队列。本章介绍栈的定义、栈的存储结构、栈的各种基本运算算法设计和栈的应用; 队列的定义、队列的存储结构、队列的各种基本运算算法设计和队列的应用; Python中的deque和heapq及其使用。
第4章串和数组。本章介绍串的定义、串的存储结构、串的各种基本运算算法设计、串的模式匹配BF和KMP算法及其应用
; 数组的定义、数组的存储方法、几种特殊矩阵的压缩存储和稀疏矩阵的压缩存储。
第5章递归。本章介绍递归的定义、递归模型、递归算法设计和分析方法。
第6章树和二叉树。本章介绍树的定义、树的逻辑表示方法、树的性质、树的遍历和树的存储结构; 二叉树的定义、二叉树的性质、二叉树的存储结构、二叉树的基本运算算法设计、二叉树的递归和非递归遍历算法、二叉树的构造、线索二叉树和哈夫曼树、树森林和二叉树的转换与还原过程、树算法设计和并查集的应用。
第7章图。本章介绍图的定义、图的存储结构、图的基本运算算法设计、图的两种遍历算法以及图的应用(包括图的最小生成树、最短路径、拓扑排序和关键路径等)。
第8章查找。本章介绍查找的定义、线性表上的各种查找算法、树表上的各种查找算法以及哈希表查找算法及其应用。
第9章排序。本章介绍排序的定义、插入排序方法、交换排序方法、选择排序方法、归并排序方法和基数排序方法,
以及各种内排序方法的比较、外排序过程和相关算法。
本书教学内容紧扣《高等学校计算机专业核心课程教学实施方案》和《计算机学科硕士研究生入学考试大纲》,涵盖教学方案及考研大纲要求的全部知识点。书中带*的章节与示例为选讲或选学内容,难度相对较高,供提高者研习。本书的主要特点如下。
结构清晰,内容丰富,文字叙述简洁明了,可读性强。
图文并茂,全书用了300多幅图来表述和讲解数据的组织结构与算法设计思想。
力求归纳各类算法设计的规律,例如单链表算法中很多是基于建表算法,二叉树算法中很多是基于4种遍历算法,图算法中很多是基于两种遍历算法,如果读者掌握了相关的基础算法,那么对于较复杂的算法设计就会驾轻就熟。
深入讨论递归算法设计方法。递归算法设计是数据结构课程中的难点之一,编者从递归模型入手,介绍了从求解问题中提取递归模型的通用方法,讲解了从递归模型到递归算法设计的基本规律。
书中提供了大量的教学示例,将抽象概念和抽象的算法过程具体化。
与Python语言深度结合,充分利用Python语言中数据类型灵活的特点实现书中的所有算法,所有算法及其示例均在Python 3.7中调试通过。
教学实验设计
教学实验是利用数据结构原理解决实际问题必不可少的环节,本书将实验教学和理论教学有机结合,构成完整的体系。
 除第1章外,每一章均包含基础实验和应用实验,基础实验属于验证性实验,是上机实现相关数据结构或者算法,用于培养学生的基本数据组织和数据处理; 应用实验属于设计或者综合性实验,是利用相关数据结构完成较复杂的算法实现,用于提高
学生运用各种数据结构解决问题的能力。
 每一章包含若干与教学内容紧密结合的、难度适中的在线编程题,所有题目都经过精心挑选,均来自
力扣中国
(https:leetcodecn.com)网站。力扣(中国)是一个极好的学习和实验在线编程平台,每一题都提供了多个测试用例,可以对实验算法进行时间和空间的全方位测试。
配套教学资源
本书配套的辅助教材《数据结构教程(Python语言描述)学习与上机实验指导》提供了所有练习题和实验题的参考答案,其中所有在线编程题均在相关平台中验证通过。
为了方便教师教学和学生学习,本书提供了全面、丰富的教学资源,配套教学资源包中的内容如下。
1 教学PPT: 提供全部教学内容的精美PPT课件,仅供任课教师在教学中使用。
2 源程序代码: 所有源代码按章组织,例如ch2文件夹中存放第2章的源代码,其
示例子文件夹中是相关示例的源代码文件,例如ch2的示例子文件夹中的Exam23.py是例2.3的源代码。
3 数据结构课程教学大纲: 包含324860课堂讲授学时的教学内容安排和相应的实验教学内容安排,供教师参考。
4 练习题中算法设计题源代码: 提供所有算法设计练习题的源程序代码,仅供任课教师在教学中使用。
5 配有绝大部分知识点和全部Leet Code在线编程题讲解
的教学视频,视频采用微课碎片化形式组织(含238个小视频,累计超过40小时)。
资源下载提示
课件等资源: 扫描封底的课件下载二维码,在公众号书圈下载。
素材(源码)等资源: 扫描目录上方的二维码下载。
视频等资源: 扫描封底刮刮卡中的二维码,再扫描书里章节中的二维码,可以在线学习。
本书第2、3、6、7章由李春葆编写,第1、4、5章由蒋林编写,第8、9章由李筱驰编写,李春葆完成全书的规划和统稿工作。本书的出版得到清华大学出版社计算机与信息分社
魏江江分社长的全力支持,王冰飞老师给予精心编辑,力扣(中国)网站提供了无私的帮助,编者在此一并表示衷心
的感谢。尽管编者不遗余力,但由于水平所限,本书难免存在不足之处,敬请教师和同学们批评指正,
在此表示衷心的感谢。
编者2020年8月

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.