| 本书介绍了数据处理领域中常用的数据结构及其主要的运算,所有的算法均给出了C++的描述,主要内容包括:数据结构与算法的基本概念、线性表及其顺序存储结构、线性链表及其运算、数组、树与二叉树、图、查找技术、Hash表技术、排序技术。本书通俗易懂,实例丰富,每章后面都有习题。本书可作为高等院校非计算机专业的学生学习数据结构的教材,也可作为数据结构的培训班教材或自学教材。 |
| 绪论 1.1数据结构的基本概念1 1.1.1两个例子1 1.1.2什么是数据结构4 1.1.3数据结构的图形表示7 1.1.4线性数据结构与非线性数据结构8 1.2算法方面的考虑9 1.2.1什么是算法9 1.2.2算法的复杂度10 习题12 线性表及其顺序存储结构 2.1线性表的基本概念14 2.1.1什么是线性表14 2.1.2线性表的顺序存储结构——顺序表15 2.1.3顺序表的基本运算——插入与删除16 2.1.4顺序表类20 2.2栈及其应用24 2.2.1什么是栈24 2.2.2栈的顺序存储及其运算26 2.2.3顺序栈类28 2.2.4表达式的计算31 2.3队列及其应用37 2.3.1什么是队列37 2.3.2循环队列及其运算37 2.3.3循环队列类40 2.3.4队列的应用44 2.4字符串49 2.4.1字符串的基本概念49 2.4.2字符串匹配50 习题55 线性链表 3.1线性链表的基本概念57 3.1.1线性表顺序存储的问题57 3.1.2线性链表的存储结构58 3.1.3线性链表类62 3.1.4带链的栈65 3.1.5带链的队列68 3.2线性链表的插入与删除72 3.3循环链表77 3.4多项式的表示与运算80 习题88 数组 4.1数组的顺序存储结构90 4.2规则矩阵的压缩91 4.3一般稀疏矩阵的表示94 4.3.1稀疏矩阵的三列二维数组表示95 4.3.2稀疏矩阵的线性链表表示108 4.3.3十字链表117 习题121 树与二叉树 5.1树123 5.2二叉树及其基本性质126 5.2.1什么是二叉树126 5.2.2二叉树的基本性质127 5.2.3满二叉树与完全二叉树128 5.3二叉树的遍历129 5.4二叉树的存储结构131 5.4.1二叉链表131 5.4.2二叉链表类133 5.5穿线二叉树137 5.5.1穿线二叉树的概念137 5.5.2中序穿线二叉树137 5.5.3前序穿线二叉树142 5.5.4后序穿线二叉树145 5.6表达式的线性化149 5.6.1有序树的二叉树表示149 5.6.2如何对表达式进行线性化151 5.7最优二叉树及其应用151 5.7.1什么是最 |
商品评论(0条)