全书条理清晰,内容详实,既注重数据结构和算法原理,又十分强调程序设计训练。书中算法都有完整的C++程序,程序结构清晰,构思精巧。所有程序都已在 VC++环境下编译通过并能正确运行,它们既是学习数据结构和算法的示例,也是很好的C++程序设计示例。本书深入浅出,配有大量的实例和图示,并有丰富的习题,适于自学。 |
第1章 基础知识 1 1.1 算法与数据结构 1 1.2 什么是数据结构 2 1.2.1 基本概念 2 1.2.2 数据的逻辑结构 3 1.2.3 数据的存储表示 4 1.2.4 数据结构的运算 4 1.3 数据抽象和抽象数据类型 5 1.3.1 抽象. 数据抽象和过程抽象 5 1.3.2 封装与信息隐蔽 6 1.3.3 数据类型和抽象数据类型 6 1.3.4 数据结构与抽象数据类型 7 1.4 面向对象方法 7 1.4.1 面向对象方法的由来 7 1.4.2 面向对象方法的基本思想 7 1.4.3 面向对象方法的要素 8 1.4.4 面向对象方法和抽象数据类型 9 1.5 *C 程序设计概要 9 1.5.1 函数与参数传递 9 1.5.2 动态存储分配 12 1.5.3 类与对象 13 1.5.4 函数和运算符重载 14 1.5.5 继承性和派生类 15 1.5.6 多态性. 虚函数和动态联编 16 1.5.7 纯虚函数和抽象类 17 1.5.8 友元函数和友元类 18 1.5.9 模板函数和模板类 18 1.6 描述数据结构和算法 21 1.6.1 数据结构的规范 21 1.6.2 实现数据结构 22 1.7 算法和算法分析 23 1.7.1 算法及其性能标准 23 1.7.2 算法的时间复杂度 24 1.7.3 使用程序步分析算法 26 1.7.4 渐近表示法 28 1.7.5 算法按时间复杂度分类 29 1.7.6 算法的空间复杂度 30 本章小结 30 习题 31 第2章 数组和链表 33 2.1 结构和类 33 2.1.1 结构 33 2.1.2 结构表示元素 34 2.2 指针和动态存储分配 36 2.2.1 指针 36 2.2.2 动态存储分配 37 2.2.3 静态变量和动态变量 38 2.3 数组 38 2.3.1 一维数组 38 2.3.2 二维数组 39 2.3.3 多维数组 40 2.3.4 数组和指针 40 2.4 链表 41 2.4.1 指向结构的指针 42 2.4.2 单链表 42 2.4.3 带表头结点的单链表 45 2.4.4 单循环链表 45 2.4.5 双向链表 46 2.5 采用模拟指针的链表 47 2.5 |
商品评论(0条)