数据结构与C语言高级程序设计

内容简介:
内 容 简 介 本书系统地阐述了数据的逻辑关系以及它们的存贮表示和运算操作,包括线性表、栈、队列、 树、图及分类等内容,并用C语言详细地给出了各种算法。为使没有学习过C语言的读者能顺利地 学习数据结构及其高级程序设计方法,本书用了一定的篇幅详细介绍了与数据结构实现及算法描 述有关的C语言基础知识及编程技术。把C语言、数据结构及其高级编程技术有机地结合在一起, 既注重理论介绍,又兼顾实际应用能力的培养。本书可作为高等院校非计算机专业的高年级学生 在学习完一门高级语言、且具有一定计算机操作能力之后,学习数据结构及高级程序设计的教材。 上机实习可安排24学时至30学时,讲授学时为60~70。 本书同时可作为从事企业管理及其他有关人员自学C语言和数据结构的参考书。
目录:
目录 第一章 C语言概述 §1.1C语言的起源与特点 §1.1.1C语言的起源 §1.1.2C语言的特点 §1.2C语言程序的格式 §1.3Turb0C2.0上机初步 §1.3.1准备程序 §1.3.2启动TurboC进入集成开发环境 §1.3.3程序运行 第二章 C语言表达式 §2.1数据类型 §2.2常 量 §2.3变 量 §2.3.1整型变量 §2.3.2实型变量 §2.3.3字符变量 §2.4运算符和表达式 §2.4.1算术运算符和算术表达式 §2.4.2关系运算符及关系表达式 §2.4.3逻辑运算符及逻辑表达式 §2.4.4赋值运算符 习 题 第三章 程序控制语句 §3.1if语句 §3.1.1简单的if语句 §3.1.2if-else语句 §3.1.3elseif语句 §3.2Switch语句 §3.3for循环语句 §3.4while语句 §3.5dowhile语句 习 题 第四章 函 数 §4.1函数定义的一般形式 §4.2函数参数与函数的返回值 §4.2.1形式参数和实际参数 §4.2.2函数的返回值 §4.3函数调用的一般形式 §4.3.1函数调用的一般形式 §4.3.2函数调用的方式 §4.3.3库函数的调用 §4.4函数的嵌套调用 §4.5局部变量与全局变量 §4.5.1局部变量 §4.5.2全局变量 习 题 第五章 指针和数组 §5.1指针变量与指针表达式 §5.2数 组 §5.2.1一维数组 §5.2.2指向数组的指针 §5.2.3二维数组 §5.3字符串与字符串函数 §5.3.1字符串输入 §5.3.2字符串函数 §5.3.3字符串数组 §5.4数组初始化 §5.4.1数组初始化的一般形式 §5.4.2不定大小数组初始化 习 题 第六章 结构与动态内存分配 §6.1结构类型和结构变量 §6.1.1结构类型的定义 §6.1.2结构变量的定义 §6.1.3结构变量的初始化 §6.2结构变量成员的引用 §6.3结构数组 §6.3.1结构数组的定义 §6.3.2结构数组的初始化 §6.3.3举 例 §6.4结构指针 §6.4.1结构指针的定义 §6.4.2结构指针的使用 §6.4.3举 例 §6.5动态内存分配 §6.5.1C语言程序的存贮空间的分配 §6.5.2动态内存分配 §6.5.3动态内存分配函数的使用 习 题 第七章 数据结构概述 §7.1数据结构课程的形成与发展 §7.2数据结构 §7.3基本术语 习 题 第八章 线性表 §8.1线性表的逻辑结构 §8.2线性表的顺序存贮结构 §8.3线性表的链式存贮结构 §8.3.1线性链表 §8.3.2循环链表 §8.3.3双向链表 习 题 第九章 栈和队列 §9.1栈 §9.1.1栈的定义和基本操作 §9.1.2栈的表示和实现 §9.1.3链 栈 §9.1.4栈的应用 §9.2栈与递归 §9.3队 列 §9.3.1队列的定义和基本运算 §9.3.2队列的顺序存贮结构 §9.3.3链队列 习 题 第十章 树 §10.1树的基本概念和术语 §10.2树的存贮结构 §10.3二叉树 §10.3.1二叉树的定义和性质 §10.3.2二叉树的存贮结构 §10.3.3二叉树的建立 §10.4遍历二叉树 §10.4.1遍历二叉树的定义及递归算法 §10.4.2遍历二叉树的非递归算法 §10.5二叉树的具体操作 §10.5.1排序二叉树 §10.5.2二叉树的插入操作 §10.5.3二叉树中元素的查找 §10.5.4从二叉树中删除一个成员 §10.5.5遍历一棵二叉树 §10.6哈夫曼树及哈夫曼编码 §10.6.1最优二叉树(哈夫曼树) §10.6.2哈夫曼编码 §10.7二叉树的应用实例 习 题 第十一章 图 §11.1图的概念 §11.2图的存贮表示 §11.2.1图的邻接矩阵表示 §11.2.2图的邻接表表示 §11.3图的遍历 §11.3.1图的深度优先遍历 §11.3.2图的宽度优先遍历 §11.4生成树与最小生成树 §11.4.1基本概念 §11.4.2prim算法的基本思想 §11.4.3prim算法的C语言实现 §11.5关键路径和最短路径 §11.5.1拓扑排序 §11.5.2关键路径 §11.5.3最短路径 习 题 第十二章 分类与检索 §12.1基本概念 §12.2选择排序 §12.3插入排序 §12.3.1直接插入排序 §12.3.2二分法插入排序 §12.4快速排序 §12.5检 索 习 题 第十三章 数据结构应用举例 §13.1计划网络 §13.1.1网络计划的方法 §13.1.2关键路径及时间参数计算 §13.1.3计划网络程序的主要数据结构 §13.1.4计划网络程序的主要函数实现 §13.1.5计划网络源程序清单 §13.2用链表技术实现下拉式菜单 §13.2.1问题提出 §13.2.2软件中使用的标准函数 §13.2.3下拉式菜单软件包函数 §13.2.4下拉式菜单源程序 §13.2.5下拉式菜单程序的总结 第十四章 TurboC2.0集成开发环境 §14.1Turb0C2.0的安装 §14.1.1用安装工具INSTALL在硬盘安装TC §14.1.2手工安装TC §14.2Trub0C2.0集成开发环境简介 §14.3C程序的编辑和运行 §14.3.1源程序的建立和编辑 §14.3.2C程序的编译和运行 §14.4C程序的调试 §14.5设置TC工作环境 §14.6运行环境 §14.7调试技巧 附录 Turb0C2.0主要库函数的格式和功能
评论