C语言版严蔚敏《数据结构》:算法实现与电话簿查询案例

需积分: 9 2 下载量 130 浏览量 更新于2024-08-24 收藏 3.82MB PPT 举报
《算法实现-数据结构C语言版》是由严蔚敏和吴伟民共同编著的一本教材,专为学习数据结构的学生提供C语言实现的教程。本书针对计算机科学中的核心课程——数据结构,讲述了如何用C语言设计和实现数据结构以及相关的算法。数据结构是计算机科学中的基础,它涉及到信息的表示、组织和处理,对提高程序效率至关重要。 章节1.1中,作者首先定义了数据结构及其概念,指出它是连接数学、计算机硬件和软件的关键课程,对于程序设计、编译器、操作系统、数据库和其他系统程序开发都具有重要意义。数据结构主要关注如何用数据形式描述问题,构建数学模型,分析数据量、关系、存储和运算需求,以及评估程序性能。 举例说明数据结构的应用,例如电话号码查询系统,通过一对一封装的数据结构(如数组或链表)来存储名字和电话号码,体现了线性数据结构的简单一对一关系。另一个例子是磁盘目录文件系统,展示了树形数据结构,其中根目录下有子目录和文件,体现了数据之间的层次关系。 书中还提到了一些参考文献,包括《数据结构》、《数据结构与算法分析》、《数据结构习题与解析》以及《数据结构与算法》,这些书籍都是数据结构领域的经典著作,可以为学习者提供更全面的理论和实践指导。 在具体的算法实现部分,如给出的PostorderTraverse函数,用于后序遍历二叉树,它展示了如何通过递归和栈来管理和遍历数据结构。这段代码定义了一个最大节点数为50的栈S1,用于保存节点指针,同时用一个布尔变量bool跟踪是否还有节点未访问。在遍历过程中,函数会将左子节点压入栈,并更新对应的索引,直到所有节点都被处理完毕。 总结来说,《算法实现-数据结构C语言版》以严蔚敏和吴伟民的教材为核心,通过实例和C语言实践,深入浅出地介绍了数据结构的原理、常见数据结构类型(如线性表、树等)、以及如何用算法实现它们。这对于理解计算机程序设计的本质,提高编程技能,特别是对C语言编程者来说,是非常有价值的参考资料。