《数据结构》C语言版讲义——严蔚敏配套

需积分: 0 0 下载量 74 浏览量 更新于2024-08-01 收藏 1.69MB DOC 举报
"严蔚敏教授的数据结构讲义,用C语言描述,适用于计算机专业基础学习,包含习题和解答,强调理解和实践" 严蔚敏教授的《数据结构》讲义是计算机科学教育中的经典参考资料,主要面向计算机专业的学生和准备各类计算机考试的考生。这本讲义以C语言为描述语言,旨在帮助读者更好地理解和应用数据结构的概念。讲义的编写风格较为直接,有时会采用非正式的表述,以增加可读性和便于记忆。值得注意的是,书中的一些非标准表达会用引号括起并加以脚注,但这并不影响核心知识点的学习。 讲义涵盖了数据结构的基础知识,包括但不限于: 1. 绪论:讲解数据结构的基本概念,算法的重要性,以及如何评价和分析算法的效率。 2. 线性表:介绍了线性表的基本特性,如顺序表和链表。顺序表是通过数组实现的线性表,而链表包括单链表、循环链表和双向循环链表,它们各有优缺点。 3. 栈和队列:栈是一种后进先出(LIFO)的数据结构,常见的应用有递归、表达式求值等;队列是先进先出(FIFO)的数据结构,常见于任务调度和打印队列等场景。讲义中还讨论了链栈、顺序栈、链队列和循环队列的不同实现方式。 4. 串:串是字符的线性序列,包括串的基本操作如插入、删除、查找等,以及不同的存储结构,如定长数组和动态数组。 5. 树和二叉树:树是数据结构中的重要概念,二叉树是特殊类型的树,具有左子节点、右子节点的特性。讲义涵盖了二叉树的性质、存储结构以及五种基本形态,如满二叉树、完全二叉树等。 6. 查找表和内部排序:虽然这部分内容未在摘要中详细展开,但查找表涉及二分查找、哈希表等,内部排序则涵盖各种排序算法,如冒泡排序、快速排序、归并排序等。 每章后面都有习题供读者练习,习题难度不一,且附带参考答案,以促进读者的自我检验和学习。此外,讲义特别强调了理论与实践的结合,鼓励读者通过实际编程来加深对数据结构的理解。 严蔚敏教授的《数据结构》讲义是一份宝贵的教育资源,它不仅提供了数据结构的基本知识,还强调了实际应用和问题解决能力的培养,对于计算机专业的学生和程序员来说,是一本不可或缺的学习资料。