基本信息
内容简介
目录
1.1引言
1.2基本概念与术语
1.3抽象数据类型
1.4算法和算法的分析
1.4.1算法的基本概念
1.4.2算法的时间复杂度
1.4.3算法的空间复杂度
本章小结
第2章线性表
2.1线性表的逻辑结构
2.1.1线性表的引例
2.1.2线性表的定义
2.1.3线性表的基本操作
2.2线性表的顺序存储结构
2.2.1顺序表结构
2.2.2顺序表的基本操作
2.3线性表的链式存储结构
2.3.1链式存储结构
2.3.2单链表上的基本运算
前言
数据结构课程的教学要求是要让学生学会分析研究计算机加工的数据对象的特征。在面对一个非数值的应用问题时,引导学生根据对软件进行评价的基本标准,选择最佳的逻辑结构、存储结构和相应的算法,从而使学生逐步掌握编写执行速度快、占用空间少、可靠性高、可读性好的程序的设计方法和技巧。
《数据结构(C语言描述)(第2版)》是为“数据结构”课程编写的教材。本书介绍了常用数据结构的基本概念、逻辑特性和存储结构。主要内容包括线性表、链表、栈、队列、数组、串、树、图等数据结构以及查找和排序的算法。书中对各种算法和算法的应用均给出了相应的C语言函数和程序,具有一定的实用性。本书采用C语言作为数据结构和算法的描述语言,在对数据的存储结构和算法进行描述时,尽可能考虑C语言的特色,使算法简单易读,给出的每一个算法程序只要添加上主函数即可运行; 同时,尽可能保持统一的风格、尽量使用抽象数据类型,这样用其他高级编程语言来改写这些程序也可以轻松实现。
本书概念表述严谨,逻辑推理严密,语言精练,知识结构脉络清晰,便于教学组织和实践操作。并有配套出版的《数据结构习题与实训教程(C语言描述)(第2版)》,(ISBN9787302409724)既便于教学,又便于自学。本书可作为计算机类专业或信息类相关专业的本科或专科教材,也可以作为大学非计算机专业的选修课教材和计算机应用技术人员的自学读物或参考书。
本书共10章,总课时72学时左右,其中上机实习28学时。
第1章介绍数据结构的一般概念和算法分析的初步知识; 第2章~第5章分别讨论了线性表、栈与队列、串、数组等逻辑结构及其在不同存储结构上各种操作的实现算法; 第6章、第7章论述了树和图的两种重要的非线性逻辑结构、存储方法及重要的应用; 第8章、第9章讨论了各种查找表及查找方法、各种排序算法及其应用。第10章讨论了文件的基本概念和相关算法。
书中每章带有本章学习目标和本章小结,除第1章外,每章的最后一节都精选了涉及该章内容的优秀案例,使学生通过阅读与实践,在样例的引导下,掌握编写实用程序的方法和技巧,既方便学生学习,又方便教师教学。对重点知识和总结性语句进行了突出显示,更加方便读者阅读。
本书由齐景嘉、王梦菊主编,蒋巍、夏丽华、刘玉喜副主编,郭川军主审,参加本书编写工作的还有徐辉和李凌霞。各章编写分工如下:
第1章和第2章由哈尔滨金融学院的齐景嘉编写;
第3章由上海财经大学的夏丽华编写;
第4章和第5章由哈尔滨师范大学的刘玉喜和哈尔滨金融学院的李凌霞编写;
第6章和第9章由哈尔滨金融学院的王梦菊编写;
第7章和第8章由哈尔滨金融学院的蒋巍编写;
第10章由黑龙江大学的徐辉编写;
全书由哈尔滨金融学院的齐景嘉统一编排定稿。
本书编者都是多年从事本课程教学的教师,但由于编者水平有限,不妥与疏漏之处在所难免,敬请广大读者指正。
本书的配套课件等资源可以从清华大学出版社网站www.tup.com.cn下载,本书及课件使用的相关问题请联系fuhy@tup.tsinghua.edu.cn。
编者
2015年7月