深入浅出数据结构与算法


深入浅出数据结构与算法

文章插图
深入浅出数据结构与算法【深入浅出数据结构与算法】本书阐明了常用的数据结构的内在逻辑关係,讨论了各种结构的物理存储表示方法,通过实例说明各种结构在运算操作时的动态特性,并结合典型套用问题给出算法设计与分析的示例 。这样不仅为后续相关课程提供必要的知识準备,更重要的是可以进一步提高读者从事软体分析、设计、编程和数据组织的能力 。
基本介绍书名:深入浅出数据结构与算法
作者:刘晓华、肖进杰、唐焕玲、石艳荣、陈姝颖
ISBN:9787302407225
定价:35元
出版社:清华大学出版社 
出版时间:2015.06.01
印次:1-1
印刷日期:2015.07.15
内容简介本书阐明了常用的数据结构的内在逻辑关係,讨论了各种结构的物理存储表示方法,通过实例说明各种结构在运算操作时的动态特性,并结合典型套用问题给出算法设计与分析的示例 。这样不仅为后续相关课程提供必要的知识準备,更重要的是可以进一步提高读者从事软体分析、设计、编程和数据组织的能力 。全书共8章,在内容的组织上遵循由浅入深、循序渐进的原则,按简单的线性结构、树形结构、图结构、查找和排序的次序安排主要教学内容;在内容的叙述上力求做到通俗易懂,算法描述结构清晰、易读易理解,并对每个算法都做了大量注释;全书选取的内容都较好地体现了突出套用的原则,以实例介绍各种数据结构的套用,并在各章都附有相应的习题 。图书目录第1章绪论11.1什幺是数据结构11.1.1学习数据结构的目的11.1.2有关概念和术语41.2数据类型和抽象数据类型61.2.1数据类型61.2.2抽象数据类型61.3算法与算法分析81.3.1算法的特性81.3.2算法描述101.3.3算法效率的度量10本章小结13习题113第2章线性表162.1线性表的逻辑结构162.1.1线性表的定义162.1.2线性表的抽象数据类型172.2线性表的顺序存储与实现182.2.1顺序表182.2.2顺序表基本操作的实现192.2.3顺序表套用举例232.3线性表的链式存储与实现252.3.1单鍊表252.3.2单鍊表上基本运算的实现272.3.3单鍊表的套用302.3.4循环鍊表312.3.5双向鍊表322.3.6静态鍊表33[1]〖2〗深入浅出数据结构与算法[1]目录〖2〗2.4一元多项式的表示及加法实现362.5套用实例——约瑟夫环问题38本章小结42习题242第3章限定性线性表——栈和伫列463.1栈463.1.1栈的定义463.1.2栈的表示和实现473.2栈的套用举例523.3伫列563.3.1伫列的定义563.3.2伫列的表示和实现573.4伫列的套用举例623.5套用实例——银行排队服务模拟63本章小结68习题368第4章串、数组和广义表724.1串的定义724.2串的表示和实现734.2.1定长顺序存储表示744.2.2堆分配存储表示754.2.3串的块链存储表示774.3模式匹配774.3.1简单模式匹配784.3.2一种改进的模式匹配794.4数组814.4.1数组的定义814.4.2数组的顺序存储与实现824.4.3矩阵的压缩存储834.5广义表914.5.1广义表的定义914.5.2广义表的存储结构924.6套用实例——投票选举93本章小结96习题497第5章树和二叉树1005.1树的基本概念1005.1.1树的定义1005.1.2树的基本术语1025.2二叉树1045.2.1二叉树的定义1045.2.2二叉树的性质1055.2.3二叉树的存储结构1075.3二叉树的遍历1105.3.1二叉树的遍历算法1105.3.2二叉树遍历算法的套用1125.4线索二叉树1145.4.1线索二叉树的定义1145.4.2二叉树的线索化1155.4.3线索二叉树的遍历1175.5树和森林1185.5.1树的存储结构1185.5.2森林与二叉树的转换1215.5.3树和森林的遍历1225.6哈夫曼树及其套用1235.6.1基本术语1235.6.2构造哈夫曼树1245.6.3哈夫曼树的套用1275.7套用实例——并查集129本章小结132习题5133第6章图1366.1图的基本概念1366.1.1图的定义1366.1.2图的基本术语1376.2图的存储结构1416.2.1邻接矩阵1416.2.2邻接表1436.2.3有向图的十字鍊表1466.2.4无向图的邻接多重表1476.3图的遍历1496.3.1深度优先搜寻1496.3.2广度优先搜寻1516.4无向图的连通分量和生成树1526.5图的套用1536.5.1最小生成树1536.5.2有向无环图与拓扑排序1576.5.3关键路径1616.5.4最短路径1666.6套用实例——畅通工程171本章小结175习题6175第7章查找1797.1查找的基本概念1797.2静态查找1807.2.1顺序查找1817.2.2折半查找1837.2.3分块查找1857.3动态查找1877.3.1二叉排序树1877.3.2平衡二叉树1947.3.3B树2037.4哈希表2047.4.1哈希表的概念2057.4.2哈希函式的构造2057.4.3处理冲突的方法2077.4.4哈希表查找及其分析2097.5套用实例——通讯录查询系统210本章小结217习题7218第8章排序2218.1排序的基本概念221 8.2插入排序2228.2.1直接插入排序2238.2.2折半插入排序2248.2.3希尔排序2258.3交换排序2278.3.1冒泡排序2278.3.2快速排序2298.4选择排序2328.4.1简单选择排序2328.4.2堆排序2338.5归併排序2378.6基数排序2398.6.1多关键字排序2398.6.2链式基数排序2408.7内部排序方法比较2448.8套用实例——内部排序算法比较246本章小结255习题8256参考文献260