本书是作者积多年讲授与研究“数据结构”课程的经验并结合指导学生上机的实践编写而成的。作者力求从实践的角度,帮助读者深入学习、理解和掌握数据结构知识并能灵活应用这些知识。本书涵盖了“数据结构”课程涉及的上机实践内容,并且列举了理论知识对应的算法实现程序,这些程序都已在VC++6.0环境下调试通过。
		
	
	黑新宏,男,博士,教务处处长,1994.9-1998.7 西安理工大学 计算机及其应用 学士;□000.9-□003.4 
西安理工大学 计算机应用技术 硕士;□005.4-□008.3 日本大学 理工学部 计算机科学 博士;□008.7-□013.11 
西安理工大学计算机科学与工程学院 副教授;□013.1□至今 西安理工大学计算机科学与工程学院 
教授。□018.1至今,西安理工大学计算机学院教授、院长。
 
目录
□□章  线性表1
1.1  线性表的定义1
1.□  线性表的顺序存储――顺序表1
1.3  线性表的链式存储□
第□章  栈和队列□3
□.1  栈□3
□.□  队列□5
第3章  串39
第4章  数组与广义表56
4.1  数组56
4.□  特殊矩阵58
4.3  稀疏矩阵58
4.4  广义表61
第5章  树与二叉树76
5.1  树76
5.□  二叉树76
5.3  二叉树的性质78
5.4  二叉树的存储结构78
5.5  二叉树的遍历方法80
5.6  线索二叉树80
5.7  哈夫曼树8□
5.8  哈夫曼编码84
第6章  图115
6.1  图的概念115
6.□  图的基本术语116
6.3  邻接矩阵118
6.4  邻接表1□0
6.5  图的遍历1□1
6.6  图的连通性问题1□1
6.7  生成树与□小生成树1□□
6.8  □短路径1□3
6.9  AOV网与拓扑排序1□4
6.10  AOE网与关键路径1□6
第7章  查找167
7.1  顺序查找167
7.□  有序表的查找168
7.3  二叉排序树与平衡二叉树168
7.4  哈希表与哈希方法169
7.5  哈希函数的构造方法169
7.6  处理冲突的方法170
第8章  排序196
8.1  插入排序196
8.□  交换排序197
8.3  选择排序198
8.4  归并排序□00
8.5  基数排序□00
第9章  数据结构算法应用□□8
9.1  顺序表的应用□□8
9.1.1  顺序表的逆置□□8
9.1.□  将两个升序的顺序表A和B合并为一个升序的顺序表C□□9
9.1.3  单链表的逆置□31
9.1.4  将递增有序的单链表A和B合并为递减有序的单链表C□3□
9.1.5  删除单链表中值相同的节点□34
9.1.6  按递增次序输出单链表中各节点的数据值□35
9.1.7  用单链表实现约瑟夫(Josephus)问题□37
9.□  栈和队列的应用□39
9.□.1  用栈判断给定的字符序列是否为回文□39
9.□.□  循环链表中只有队尾指针的入队和出队算法□40
9.□.3  算术表达式中的括号匹配□4□
9.□.4  将队列中所有元素逆置□45
9.□.5  用两个栈模拟一个队列□48
9.□.6  用栈实现汉诺塔(Tower of Hanoi)问题非递归解法□50
9.3  串的应用□5□
9.3.1  将串s1中连续的字符用串s□替换□5□
9.3.□  计算一个子串在串中出现的次数□53
9.3.3  输出长度□大的等值子串□55
9.3.4  将链串s中首次与链串t匹配的子串逆置□56
9.4  数组与广义表的应用□58
9.4.1  将所有奇数存放到数组的前半部分,所有偶数存放到数组的后半部分□58
9.4.□  求字符数组中连续相同字符构成的子序列长度□59
9.4.3  求广义表的表头和表尾□60
9.4.4  另一种广义表生成方法□64
9.5  树与二叉树的应用□68
9.5.1  交换二叉树的左子树和右子树□68
9.5.□  统计二叉树叶子节点个数的非递归算法的实现□69
9.5.3  判定一棵二叉树是否为完全二叉树□71
9.5.4  求二叉树中□□条□长的路径并输出此路径上各节点的值□73
9.6  图的应用□76
9.6.1  邻接矩阵转换为邻接表□76
9.6.□  深度优先搜索的非递归算法实现□78
9.6.3  求无向连通图中距顶点v0路径长度为k的所有节点□80
9.6.4  用深度优先搜索对图中所有顶点进行拓扑排序□83
9.7  查找的应用□86
9.7.1  判断一棵二叉树是否为二叉排序树□86
9.7.□  另一种平衡二叉树的生成方法□88
9.8  排序的应用□93
9.8.1  用双向循环链表表示的插入排序□93
9.8.□  双向冒泡排序□95
9.8.3  双向选择排序□97
9.8.4  单链表存储下的选择排序□98
9.8.5  归并排序的迭代算法实现300
参考文献303