零基础学编程:零基础学数据结构

零基础学编程:零基础学数据结构
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2010-01
版次: 1
ISBN: 9787111291367
定价: 58.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 453页
正文语种: 简体中文
27人买过
  •   《零基础学数据结构》是计算机专业的专业基础课和核心课程。《零基础学数据结构》内容全面,所有算法都是用C语言描述,能够直接运行,在每一章的所有知识点都给出了算法的具体使用。《零基础学数据结构》内容包括数据结构概述、C语言程序设计基础、线性表、栈、队列、串、数组、广义表、树和二叉树、图、查找、内排序和外排序。为了便于读者学习,在讲解每一个知识点时,都结合图和具体实例进行分析,在每个知识点的最后都给出算法的具体应用,每一个例子都比较典型且知识点覆盖完整。
      《零基础学数据结构》可作为大中专院校的计算机相关专业数据结构的教材,也可作为计算机软件开发、考验和软件等级考试相关人员的参考书。 第一篇 基础篇
    第1章 数据结构概述1
    1.1 数据结构的基本概念1
    1.2 抽象数据类型及其描述2
    1.2.1 抽象数据类型的定义3
    1.2.2 抽象数据类型的描述3
    1.3 数据结构的逻辑结构与物理结构4
    1.3.1 逻辑结构4
    1.3.2 物理结构5
    1.4 算法的特性与算法的描述5
    1.4.1 算法的定义5
    1.4.2 算法的特性6
    1.4.3 算法的描述6
    1.5 算法分析7
    1.5.1 算法设计的要求7
    1.5.2 算法效率评价8
    1.5.3 算法时间复杂度9
    1.5.4 算法空间复杂度11
    1.6 小结11

    第2章 C语言基础12
    2.1 开发环境介绍12
    2.1.1 TurboC2.0开发环境介绍12
    2.1.2 VisualC++6.0开发环境介绍14
    2.2 递归与非递归17
    2.2.1 函数的递归调用17
    2.2.2 递归应用举例18
    2.2.3 一般递归转化为非递归20
    2.3 指针20
    2.3.1 指针变量20
    2.3.2 指针变量的引用22
    2.3.3 指针与数组22
    2.3.4 函数指针与指针函数27
    2.4 参数传递32
    2.4.1 传值调用33
    2.4.2 传地址调用34
    2.5 结构体与联合体36
    2.5.1 结构体的定义37
    2.5.2 指向结构体的指针38
    2.5.3 联合体及应用39
    2.6 动态内存分配与释放40
    2.6.1 内存动态分配与释放40
    2.6.2 链表40
    2.7 小结46
    2.8 习题46

    第二篇 线性数据结构
    第3章 线性表47
    3.1 线性表的概念及运算47
    3.1.1 线性表的逻辑结构47
    3.1.2 线性表的抽象数据类型48
    3.2 线性表的顺序表示与实现49
    3.2.1 线性表的顺序存储结构49
    3.2.2 顺序表的基本运算50
    3.2.3 顺序表的实现算法分析53
    3.3 顺序表的应用举例53
    3.4 线性表的链式表示与实现58
    3.4.1 单链表的存储结构58
    3.4.2 单链表的基本运算60
    3.5 单链表应用举例65
    3.6 循环单链表70
    3.6.1 循环单链表的链式存储71
    3.6.2 循环单链表的应用72
    3.7 双向链表76
    3.7.1 双向链表的存储结构76
    3.7.2 双向链表的插入操作和删除操作77
    3.8 双向链表的应用举例79
    3.9 静态链表82
    3.9.1 静态链表的存储结构82
    3.9.2 静态链表的实现83
    3.9.3 静态链表的应用85
    3.10 各种线性表的操作86
    3.11 一元多项式的表示与相乘94
    3.11.1 一元多项式的表示94
    3.11.2 一元多项式相乘95
    3.12 小结99
    3.13 习题100

    第4章 栈101
    4.1 栈的表示与实现101
    4.1.1 栈的定义101
    4.1.2 栈的抽象数据类型102
    4.2 栈的顺序表示与实现102
    4.2.1 栈的顺序存储结构102
    4.2.2 顺序栈的基本运算103
    4.2.3 共享栈的问题105
    4.3 栈的应用举例一107
    4.4 栈的链式表示与实现111
    4.4.1 栈的存储结构111
    4.4.2 栈的基本运算112
    4.4.3 链栈的应用114
    4.5 栈的应用举例二115
    4.5.1 数制转换116
    4.5.2 括号配对117
    4.5.3 行编辑程序119
    4.6 栈与递归的实现121
    4.6.1 递归121
    4.6.2 消除递归124
    4.7 栈的应用举例三129
    4.7.1 表达式的转换与计算130
    4.7.2 表达式的运算132
    4.8 小结136
    4.9 习题137

    第5章 队列138
    5.1 队列的定义及抽象数据类型138
    5.1.1 队列的定义138
    5.1.2 队列的抽象数据类型138
    5.2 队列的顺序存储及实现139
    5.2.1 顺序队列的表示139
    5.2.2 顺序队列的“假溢出”142
    5.2.3 顺序循环队列的表示143
    5.2.4 顺序循环队列的实现144
    5.2.5 顺序循环队列实例145
    5.3 队列的链式存储及实现148
    5.3.1 链式队列的表示148
    5.3.2 链式队列的实现150
    5.3.3 链式队列实例152
    5.4 双端队列156
    5.4.1 双端队列的定义156
    5.4.2 双端队列的应用156
    5.5 队列在杨辉三角中的应用159
    5.5.1 杨辉三角159
    5.5.2 杨辉三角的队列构造159
    5.5.3 杨辉三角队列的实现160
    5.6 小结164
    5.7 习题164

    第6章 串165
    6.1 串的定义及抽象数据类型165
    6.1.1 串的定义165
    6.1.2 串的抽象数据类型165
    6.2 串的顺序表示与实现167
    6.2.1 串的顺序存储结构167
    6.2.2 串的基本运算168
    6.3 串的应用举例173
    6.4 串的堆分配表示与实现174
    6.4.1 堆分配的存储结构175
    6.4.2 堆串的基本运算175
    6.5 堆串的应用举例181
    6.6 串的链式存储表示与实现183
    6.6.1 串的链式存储结构183
    6.6.2 链串的基本运算184
    6.7 链串的应用举例189
    6.8 串的模式匹配191
    6.8.1 经典的模式匹配算法─Brute-Force191
    6.8.2 KMP算法193
    6.8.3 模式匹配应用举例198
    6.9 小结202
    6.10 习题202

    第7章 数组203
    7.1 数组的定义及抽象数据类型203
    7.1.1 数组的定义203
    7.1.2 数组的抽象数据类型204
    7.2 数组的顺序表示与实现204
    7.2.1 数组的顺序存储结构204
    7.2.2 数组的基本运算206
    7.2.3 数组的应用举例208
    7.3 特殊矩阵的压缩存储209
    7.3.1 对称矩阵的压缩存储210
    7.3.2 三角矩阵的压缩存储210
    7.3.3 对角矩阵的压缩存储211
    7.4 稀疏矩阵的压缩存储212
    7.4.1 稀疏矩阵的定义212
    7.4.2 稀疏矩阵的抽象数据类型212
    7.4.3 稀疏矩阵的三元组表示213
    7.4.4 稀疏矩阵的三元组实现213
    7.5 稀疏矩阵的应用举例219
    7.5.1 稀疏矩阵相乘三元组表示219
    7.5.2 稀疏矩阵相乘三元组实现221
    7.6 稀疏矩阵的十字链表表示与实现224
    7.6.1 稀疏矩阵的十字链表表示224
    7.6.2 稀疏矩阵的十字链表实现225
    7.7 稀疏矩阵的十字链表实现应用举例228
    7.8 小结233
    7.9 习题234

    第8章 广义表235
    8.1 广义表的定义及抽象数据类型235
    8.1.1 广义表的定义235
    8.1.2 广义表的抽象数据类型236
    8.2 广义表的头尾链表表示与实现236
    8.2.1 广义表的头尾链表存储结构236
    8.2.2 广义表的基本运算237
    8.2.3 采用头尾链表存储结构的广义表应用举例240
    8.3 广义表的扩展线性链表表示与实现243
    8.3.1 广义表的扩展线性链表存储243
    8.3.2 广义表的基本运算244
    8.3.3 采用扩展线性链表存储结构的广义表应用举例247
    8.4 小结249
    8.5 习题250

    第三篇 非线性数据结构
    第9章 树251
    9.1 树的定义及抽象数据类型251
    9.1.1 树的定义251
    9.1.2 树的逻辑表示252
    9.1.3 树的抽象数据类型253
    9.2 二叉树254
    9.2.1 二叉树的定义254
    9.2.2 二叉树的性质255
    9.2.3 二叉树的抽象数据类型257
    9.3 二叉树的存储表示与实现258
    9.3.1 二叉树的顺序存储258
    9.3.2 二叉树的链式存储258
    9.3.3 二叉树的基本运算259
    9.4 二叉树的遍历263
    9.4.1 二叉树遍历的定义263
    9.4.2 二叉树的先序遍历263
    9.4.3 二叉树的中序遍历265
    9.4.4 二叉树的后序遍历267
    9.5 二叉树遍历的应用举例269
    9.5.1 二叉树的创建269
    9.5.2 二叉树的输出273
    9.5.3 二叉树的计数276
    9.6 二叉树的线索化279
    9.6.1 二叉树线索化的定义..279
    9.6.2 二叉树的线索化280
    9.6.3 线索二叉树的遍历282
    9.6.4 线索二叉树的应用举例284
    9.7 树、森林与二叉树287
    9.7.1 树的存储结构287
    9.7.2 树转换为二叉树290
    9.7.3 森林转换为二叉树291
    9.7.4 二叉树转换为树和森林292
    9.7.5 树和森林的遍历292
    9.8 哈夫曼树293
    9.8.1 哈夫曼树的定义293
    9.8.2 哈夫曼编码294
    9.8.3 哈夫曼编码算法的实现295
    9.9 树与二叉树的应用举例301
    9.9.1 相似二叉树301
    9.9.2 由先序和中序、中序和后序确定二叉树302
    9.9.3 树的孩子兄弟链表应用举例308
    9.10 小结311
    9.11 习题312

    第10章 图313
    10.1 图的定义与相关概念313
    10.1.1 图的定义313
    10.1.2 图的相关概念314
    10.1.3 图的抽象数据类型316
    10.2 图的存储结构317
    10.2.1 邻接矩阵表示法317
    10.2.2 邻接表表示法318
    10.2.3 十字链表表示法320
    10.2.4 邻接多重链表表示法321
    10.3 图的应用举例322
    10.3.1 采用邻接矩阵创建图322
    10.3.2 采用邻接表创建图325
    10.4 图的遍历328
    10.4.1 图的深度优先遍历328
    10.4.2 图的广度优先遍历331
    10.4.3 图的遍历应用举例333
    10.5 图的连通性问题335
    10.5.1 无向图的连通分量与生成树335
    10.5.2 最小生成树337
    10.6 有向无环图342
    10.6.1 AOV网与拓扑排序342
    10.6.2 AOE网与关键路径345
    10.6.3 关键路径应用举例349
    10.7 最短路径354
    10.7.1 从某个顶点到其余各顶点的最短路径354
    10.7.2 每一对顶点之间的最短路径359
    10.8 图的应用举例363
    10.9 小结367
    10.10 习题368

    第四篇 查找和排序
    第11章 查找369
    11.1 查找的基本概念369
    11.2 静态查找370
    11.2.1 顺序表的查找370
    11.2.2 有序顺序表的查找371
    11.2.3 索引顺序表的查找373
    11.2.4 静态查找应用举例374
    11.3 动态查找377
    11.3.1 二叉排序树377
    11.3.2 平衡二叉树384
    11.4 B_树与B+树392
    11.4.1 B_树392
    11.4.2 B+树399
    11.5 散列表400
    11.5.1 散列表的定义400
    11.5.2 散列函数的构造方法401
    11.5.3 处理冲突的方法402
    11.5.4 散列表应用举例403
    11.6 小结407
    11.7 习题408

    第12章 内排序409
    12.1 排序的基本概念409
    12.2 插入排序410
    12.2.1 直接插入排序410
    12.2.2 折半插入排序411
    12.2.3 希尔排序412
    12.2.4 插入排序应用举例413
    12.3 选择排序415
    12.3.1 简单选择排序415
    12.3.2 堆排序417
    12.3.3 选择排序应用举例421
    12.4 交换排序423
    12.4.1 冒泡排序423
    12.4.2 快速排序424
    12.4.3 交换排序应用举例427
    12.5 归并排序431
    12.5.1 归并排序算法431
    12.5.2 归并排序应用举例432
    12.6 基数排序434
    12.6.1 基数排序算法434
    12.6.2 基数排序应用举例437
    12.7 各种排序算法的比较441
    12.8 排序算法应用举例442
    12.9 小结445
    12.10 习题446

    第13章 外排序447
    13.1 外存的存取特性447
    13.2 磁盘排序448
    13.2.1 归并排序的基本方法448
    13.2.2 多路归并排序449
    13.3 磁带排序451
    13.3.1 2路归并排序451
    13.3.2 多路非平衡归并排序452
    13.4 小结453
  • 内容简介:
      《零基础学数据结构》是计算机专业的专业基础课和核心课程。《零基础学数据结构》内容全面,所有算法都是用C语言描述,能够直接运行,在每一章的所有知识点都给出了算法的具体使用。《零基础学数据结构》内容包括数据结构概述、C语言程序设计基础、线性表、栈、队列、串、数组、广义表、树和二叉树、图、查找、内排序和外排序。为了便于读者学习,在讲解每一个知识点时,都结合图和具体实例进行分析,在每个知识点的最后都给出算法的具体应用,每一个例子都比较典型且知识点覆盖完整。
      《零基础学数据结构》可作为大中专院校的计算机相关专业数据结构的教材,也可作为计算机软件开发、考验和软件等级考试相关人员的参考书。
  • 目录:
    第一篇 基础篇
    第1章 数据结构概述1
    1.1 数据结构的基本概念1
    1.2 抽象数据类型及其描述2
    1.2.1 抽象数据类型的定义3
    1.2.2 抽象数据类型的描述3
    1.3 数据结构的逻辑结构与物理结构4
    1.3.1 逻辑结构4
    1.3.2 物理结构5
    1.4 算法的特性与算法的描述5
    1.4.1 算法的定义5
    1.4.2 算法的特性6
    1.4.3 算法的描述6
    1.5 算法分析7
    1.5.1 算法设计的要求7
    1.5.2 算法效率评价8
    1.5.3 算法时间复杂度9
    1.5.4 算法空间复杂度11
    1.6 小结11

    第2章 C语言基础12
    2.1 开发环境介绍12
    2.1.1 TurboC2.0开发环境介绍12
    2.1.2 VisualC++6.0开发环境介绍14
    2.2 递归与非递归17
    2.2.1 函数的递归调用17
    2.2.2 递归应用举例18
    2.2.3 一般递归转化为非递归20
    2.3 指针20
    2.3.1 指针变量20
    2.3.2 指针变量的引用22
    2.3.3 指针与数组22
    2.3.4 函数指针与指针函数27
    2.4 参数传递32
    2.4.1 传值调用33
    2.4.2 传地址调用34
    2.5 结构体与联合体36
    2.5.1 结构体的定义37
    2.5.2 指向结构体的指针38
    2.5.3 联合体及应用39
    2.6 动态内存分配与释放40
    2.6.1 内存动态分配与释放40
    2.6.2 链表40
    2.7 小结46
    2.8 习题46

    第二篇 线性数据结构
    第3章 线性表47
    3.1 线性表的概念及运算47
    3.1.1 线性表的逻辑结构47
    3.1.2 线性表的抽象数据类型48
    3.2 线性表的顺序表示与实现49
    3.2.1 线性表的顺序存储结构49
    3.2.2 顺序表的基本运算50
    3.2.3 顺序表的实现算法分析53
    3.3 顺序表的应用举例53
    3.4 线性表的链式表示与实现58
    3.4.1 单链表的存储结构58
    3.4.2 单链表的基本运算60
    3.5 单链表应用举例65
    3.6 循环单链表70
    3.6.1 循环单链表的链式存储71
    3.6.2 循环单链表的应用72
    3.7 双向链表76
    3.7.1 双向链表的存储结构76
    3.7.2 双向链表的插入操作和删除操作77
    3.8 双向链表的应用举例79
    3.9 静态链表82
    3.9.1 静态链表的存储结构82
    3.9.2 静态链表的实现83
    3.9.3 静态链表的应用85
    3.10 各种线性表的操作86
    3.11 一元多项式的表示与相乘94
    3.11.1 一元多项式的表示94
    3.11.2 一元多项式相乘95
    3.12 小结99
    3.13 习题100

    第4章 栈101
    4.1 栈的表示与实现101
    4.1.1 栈的定义101
    4.1.2 栈的抽象数据类型102
    4.2 栈的顺序表示与实现102
    4.2.1 栈的顺序存储结构102
    4.2.2 顺序栈的基本运算103
    4.2.3 共享栈的问题105
    4.3 栈的应用举例一107
    4.4 栈的链式表示与实现111
    4.4.1 栈的存储结构111
    4.4.2 栈的基本运算112
    4.4.3 链栈的应用114
    4.5 栈的应用举例二115
    4.5.1 数制转换116
    4.5.2 括号配对117
    4.5.3 行编辑程序119
    4.6 栈与递归的实现121
    4.6.1 递归121
    4.6.2 消除递归124
    4.7 栈的应用举例三129
    4.7.1 表达式的转换与计算130
    4.7.2 表达式的运算132
    4.8 小结136
    4.9 习题137

    第5章 队列138
    5.1 队列的定义及抽象数据类型138
    5.1.1 队列的定义138
    5.1.2 队列的抽象数据类型138
    5.2 队列的顺序存储及实现139
    5.2.1 顺序队列的表示139
    5.2.2 顺序队列的“假溢出”142
    5.2.3 顺序循环队列的表示143
    5.2.4 顺序循环队列的实现144
    5.2.5 顺序循环队列实例145
    5.3 队列的链式存储及实现148
    5.3.1 链式队列的表示148
    5.3.2 链式队列的实现150
    5.3.3 链式队列实例152
    5.4 双端队列156
    5.4.1 双端队列的定义156
    5.4.2 双端队列的应用156
    5.5 队列在杨辉三角中的应用159
    5.5.1 杨辉三角159
    5.5.2 杨辉三角的队列构造159
    5.5.3 杨辉三角队列的实现160
    5.6 小结164
    5.7 习题164

    第6章 串165
    6.1 串的定义及抽象数据类型165
    6.1.1 串的定义165
    6.1.2 串的抽象数据类型165
    6.2 串的顺序表示与实现167
    6.2.1 串的顺序存储结构167
    6.2.2 串的基本运算168
    6.3 串的应用举例173
    6.4 串的堆分配表示与实现174
    6.4.1 堆分配的存储结构175
    6.4.2 堆串的基本运算175
    6.5 堆串的应用举例181
    6.6 串的链式存储表示与实现183
    6.6.1 串的链式存储结构183
    6.6.2 链串的基本运算184
    6.7 链串的应用举例189
    6.8 串的模式匹配191
    6.8.1 经典的模式匹配算法─Brute-Force191
    6.8.2 KMP算法193
    6.8.3 模式匹配应用举例198
    6.9 小结202
    6.10 习题202

    第7章 数组203
    7.1 数组的定义及抽象数据类型203
    7.1.1 数组的定义203
    7.1.2 数组的抽象数据类型204
    7.2 数组的顺序表示与实现204
    7.2.1 数组的顺序存储结构204
    7.2.2 数组的基本运算206
    7.2.3 数组的应用举例208
    7.3 特殊矩阵的压缩存储209
    7.3.1 对称矩阵的压缩存储210
    7.3.2 三角矩阵的压缩存储210
    7.3.3 对角矩阵的压缩存储211
    7.4 稀疏矩阵的压缩存储212
    7.4.1 稀疏矩阵的定义212
    7.4.2 稀疏矩阵的抽象数据类型212
    7.4.3 稀疏矩阵的三元组表示213
    7.4.4 稀疏矩阵的三元组实现213
    7.5 稀疏矩阵的应用举例219
    7.5.1 稀疏矩阵相乘三元组表示219
    7.5.2 稀疏矩阵相乘三元组实现221
    7.6 稀疏矩阵的十字链表表示与实现224
    7.6.1 稀疏矩阵的十字链表表示224
    7.6.2 稀疏矩阵的十字链表实现225
    7.7 稀疏矩阵的十字链表实现应用举例228
    7.8 小结233
    7.9 习题234

    第8章 广义表235
    8.1 广义表的定义及抽象数据类型235
    8.1.1 广义表的定义235
    8.1.2 广义表的抽象数据类型236
    8.2 广义表的头尾链表表示与实现236
    8.2.1 广义表的头尾链表存储结构236
    8.2.2 广义表的基本运算237
    8.2.3 采用头尾链表存储结构的广义表应用举例240
    8.3 广义表的扩展线性链表表示与实现243
    8.3.1 广义表的扩展线性链表存储243
    8.3.2 广义表的基本运算244
    8.3.3 采用扩展线性链表存储结构的广义表应用举例247
    8.4 小结249
    8.5 习题250

    第三篇 非线性数据结构
    第9章 树251
    9.1 树的定义及抽象数据类型251
    9.1.1 树的定义251
    9.1.2 树的逻辑表示252
    9.1.3 树的抽象数据类型253
    9.2 二叉树254
    9.2.1 二叉树的定义254
    9.2.2 二叉树的性质255
    9.2.3 二叉树的抽象数据类型257
    9.3 二叉树的存储表示与实现258
    9.3.1 二叉树的顺序存储258
    9.3.2 二叉树的链式存储258
    9.3.3 二叉树的基本运算259
    9.4 二叉树的遍历263
    9.4.1 二叉树遍历的定义263
    9.4.2 二叉树的先序遍历263
    9.4.3 二叉树的中序遍历265
    9.4.4 二叉树的后序遍历267
    9.5 二叉树遍历的应用举例269
    9.5.1 二叉树的创建269
    9.5.2 二叉树的输出273
    9.5.3 二叉树的计数276
    9.6 二叉树的线索化279
    9.6.1 二叉树线索化的定义..279
    9.6.2 二叉树的线索化280
    9.6.3 线索二叉树的遍历282
    9.6.4 线索二叉树的应用举例284
    9.7 树、森林与二叉树287
    9.7.1 树的存储结构287
    9.7.2 树转换为二叉树290
    9.7.3 森林转换为二叉树291
    9.7.4 二叉树转换为树和森林292
    9.7.5 树和森林的遍历292
    9.8 哈夫曼树293
    9.8.1 哈夫曼树的定义293
    9.8.2 哈夫曼编码294
    9.8.3 哈夫曼编码算法的实现295
    9.9 树与二叉树的应用举例301
    9.9.1 相似二叉树301
    9.9.2 由先序和中序、中序和后序确定二叉树302
    9.9.3 树的孩子兄弟链表应用举例308
    9.10 小结311
    9.11 习题312

    第10章 图313
    10.1 图的定义与相关概念313
    10.1.1 图的定义313
    10.1.2 图的相关概念314
    10.1.3 图的抽象数据类型316
    10.2 图的存储结构317
    10.2.1 邻接矩阵表示法317
    10.2.2 邻接表表示法318
    10.2.3 十字链表表示法320
    10.2.4 邻接多重链表表示法321
    10.3 图的应用举例322
    10.3.1 采用邻接矩阵创建图322
    10.3.2 采用邻接表创建图325
    10.4 图的遍历328
    10.4.1 图的深度优先遍历328
    10.4.2 图的广度优先遍历331
    10.4.3 图的遍历应用举例333
    10.5 图的连通性问题335
    10.5.1 无向图的连通分量与生成树335
    10.5.2 最小生成树337
    10.6 有向无环图342
    10.6.1 AOV网与拓扑排序342
    10.6.2 AOE网与关键路径345
    10.6.3 关键路径应用举例349
    10.7 最短路径354
    10.7.1 从某个顶点到其余各顶点的最短路径354
    10.7.2 每一对顶点之间的最短路径359
    10.8 图的应用举例363
    10.9 小结367
    10.10 习题368

    第四篇 查找和排序
    第11章 查找369
    11.1 查找的基本概念369
    11.2 静态查找370
    11.2.1 顺序表的查找370
    11.2.2 有序顺序表的查找371
    11.2.3 索引顺序表的查找373
    11.2.4 静态查找应用举例374
    11.3 动态查找377
    11.3.1 二叉排序树377
    11.3.2 平衡二叉树384
    11.4 B_树与B+树392
    11.4.1 B_树392
    11.4.2 B+树399
    11.5 散列表400
    11.5.1 散列表的定义400
    11.5.2 散列函数的构造方法401
    11.5.3 处理冲突的方法402
    11.5.4 散列表应用举例403
    11.6 小结407
    11.7 习题408

    第12章 内排序409
    12.1 排序的基本概念409
    12.2 插入排序410
    12.2.1 直接插入排序410
    12.2.2 折半插入排序411
    12.2.3 希尔排序412
    12.2.4 插入排序应用举例413
    12.3 选择排序415
    12.3.1 简单选择排序415
    12.3.2 堆排序417
    12.3.3 选择排序应用举例421
    12.4 交换排序423
    12.4.1 冒泡排序423
    12.4.2 快速排序424
    12.4.3 交换排序应用举例427
    12.5 归并排序431
    12.5.1 归并排序算法431
    12.5.2 归并排序应用举例432
    12.6 基数排序434
    12.6.1 基数排序算法434
    12.6.2 基数排序应用举例437
    12.7 各种排序算法的比较441
    12.8 排序算法应用举例442
    12.9 小结445
    12.10 习题446

    第13章 外排序447
    13.1 外存的存取特性447
    13.2 磁盘排序448
    13.2.1 归并排序的基本方法448
    13.2.2 多路归并排序449
    13.3 磁带排序451
    13.3.1 2路归并排序451
    13.3.2 多路非平衡归并排序452
    13.4 小结453
查看详情
您可能感兴趣 / 更多
零基础学编程:零基础学数据结构
数据结构(Java语言实现·题库·微课视频版)
陈锐 马军霞 蔡增玉 马欢 朱亮 赵晓君 李朝阳 蒋昌猛 王超
零基础学编程:零基础学数据结构
人工智能在前列腺癌诊疗中的应用
陈锐 曹志兴
零基础学编程:零基础学数据结构
重庆大学法律评论(第五辑)
陈锐 主编
零基础学编程:零基础学数据结构
钢琴艺术指导实践研究
陈锐 著
零基础学编程:零基础学数据结构
品牌密码 品牌设计与传播 品牌商标LOGO标志标识设计书籍思路整理与案例展示平面包装设计灵感集开放版权字体 图库整理
陈锐 著;凤凰空间 出品
零基础学编程:零基础学数据结构
遥远的帝婿——溥仪与皇妃李玉琴轶事
陈锐 整理;李凤 记述
零基础学编程:零基础学数据结构
人工智能应用与体验
陈锐 王恒心 葛鹏
零基础学编程:零基础学数据结构
VisualBasic.NET经典游戏编程开发
陈锐 著
零基础学编程:零基础学数据结构
C/C++函数与算法速查手册
陈锐 著
零基础学编程:零基础学数据结构
Visual C#经典游戏编程开发
陈锐 著
零基础学编程:零基础学数据结构
C语言从入门到精通
陈锐 著
零基础学编程:零基础学数据结构
深入浅出VisualBasic2005入门、进阶与应用实例
陈锐 著