更新时间:2019-10-24 10:34:08
封面
版权信息
内容简介
推荐序
前言
Chapter 1 线性表
1-1 顺序表示的线性表——顺序表
001 合并两个线性表中的元素
002 fgetc函数和getc函数
003 求两个线性表的差集
004 分拆顺序表:左边的元素小于等于0,右边的大于0
005 计算两个任何长度的整数之和
1-2 链式表示的线性表之一——单链表
006 求单链表的差集
007 合并两个单链表
1-3 链式表示的线性表之二——循环单链表
008 分拆循环单链表
009 构造三个单循环链表
1-4 链式表示的线性表之三——双向链表
010 双向链表的建立与插入操作
011 约瑟夫问题(双向链表)
Chapter 2 栈
2-1 顺序表示的栈——顺序栈
001 入栈和出栈
002 共享栈的入栈和出栈操作
003 求C(n,m)的值
2-2 链式表示的栈——链式栈
004 进制转换
005 括号匹配
006 求算术表达式的值
007 判断字符串是否中心对称
Chapter 3 队列
3-1 顺序表示的队列——顺序队列
001 入队和出队
002 舞伴配对
003 轮渡管理
3-2 链式表示的队列——链式队列
004 队列在杨辉三角中的应用
005 判断是否为回文
Chapter 4 串
4-1 顺序表示的串——顺序串
001 串的基本操作
002 将浮点型数转换为对应的字符串
003 求最长公共子串
004 求等值子串
4-2 串的模式匹配
005 模式匹配
Chapter 5 数组
5-1 数组的定义及表示
001 查找第k小元素
002 将奇数移动到偶数的左边
5-2 二维数组(矩阵)
003 将矩阵旋转90度
004 打印魔方阵
005 打印螺旋矩阵
006 打印拉丁方阵
007 打印蛇形方阵
5-3 数组的压缩存储
008 上三角阵的压缩存储
5-4 稀疏矩阵的压缩存储
009 稀疏矩阵的相加
Chapter 6 广义表
6-1 广义表的定义及头尾链表表示
001 创建广义表
6-2 广义表的扩展线性链表表示
002 创建广义表并求其深度和广度
Chapter 7 树
7-1 树与二叉树
001 根据广义表形式创建二叉树
002 建立二叉树
7-2 二叉树的遍历
003 先序非递归遍历二叉树
004 层次遍历二叉树
005 输出树的各条边
006 由中序和后序序列构造二叉树
7-3 二叉树的应用
007 交换二叉树的左右子树
008 判断是否为完全二叉树
009 求结点的个数
010 求二叉树的高度和宽度
011 求根结点到任一结点之间的路径
7-4 哈夫曼树
012 构造哈夫曼树
Chapter 8 图
8-1 图的基本概念
001 用邻接矩阵表示法创建有向图
002 利用邻接表创建有向图
003 把邻接矩阵转换为邻接表
8-2 图的遍历
004 判断有向图中是否存在回路
005 深度遍历有向图
006 图的广度优先遍历
007 判断有向图中是否有根
008 求距离顶点v0的最短长度为k的所有顶点
009 判断顶点u和顶点v是否存在简单路径
010 判断图中是否为一棵树
Chapter 9 排序算法
9-1 插入排序
001 直接插入排序
002 折半插入排序