数据结构与算法

王曙燕 王燕 王春梅 王小银 陈燕 初建玮 曾艳 舒新峰

目录

  • 1 引论
    • 1.1 数据结构的基本概念1
    • 1.2 数据结构的基本概念2
    • 1.3 数据结构的基本概念3
    • 1.4 数据的逻辑结构和存储结构
    • 1.5 算法及其时间复杂度
    • 1.6 时间复杂度及应用
    • 1.7 章节测试
  • 2 线性表
    • 2.1 线性表的概念及顺序存储
    • 2.2 单链表的概念及其基本操作
    • 2.3 建立单链表
    • 2.4 循环链表
    • 2.5 双向链表
    • 2.6 一元多项式的表示和运算
    • 2.7 章节测试
  • 3 栈和队列
    • 3.1 栈的概念及其基本操作
    • 3.2 栈的概念及其基本操作—双端栈
    • 3.3 栈的应用—递归及汉诺塔问题
    • 3.4 栈的应用—迷宫实验
    • 3.5 队列的概念及基本操作
    • 3.6 队列的概念及应用—链队列
    • 3.7 表达式的求值问题
    • 3.8 递归与分治算法
    • 3.9 章节测试
  • 4 串
    • 4.1 串的基本操作
    • 4.2 串的简单模式匹配
    • 4.3 串的KMP模式匹配算法
    • 4.4 模式串的next值计算思想
    • 4.5 模式串的next值计算实现
    • 4.6 模式串的nextval值
    • 4.7 章节测试
  • 5 多维数组和广义表
    • 5.1 数组的定义与顺序存储
    • 5.2 特殊矩阵的压缩存储
    • 5.3 三元组矩阵的快速转置
    • 5.4 广义表
    • 5.5 章节测试
  • 6 树
    • 6.1 二叉树的性质
    • 6.2 二叉树的顺序存储
    • 6.3 二叉树的遍历
    • 6.4 统计叶子结点
    • 6.5 计算二叉树的高度
    • 6.6 二叉树的恢复建立
    • 6.7 二叉树的非递归遍历
    • 6.8 线索二叉树
    • 6.9 线索二叉树的遍历
    • 6.10 树、森林和二叉树
    • 6.11 树与森林的遍历
    • 6.12 哈夫曼树
    • 6.13 哈夫曼编译码
    • 6.14 哈夫曼编码算法
    • 6.15 解空间树及其相关算法
    • 6.16 章节测试
  • 7 图
    • 7.1 图的基本概念
    • 7.2 图的存储
    • 7.3 图的深度优先遍历
    • 7.4 图的广度优先遍历
    • 7.5 图的最小生成树-Prim算法思想
    • 7.6 图的最小生成树-Prim算法实现
    • 7.7 图的最小生成树-Kruskal算法
    • 7.8 图的拓扑排序思想
    • 7.9 图的拓扑排序实现
    • 7.10 图的关键路径思想
    • 7.11 图的关键路径实现
    • 7.12 图的单源最短路径-Dijkstra思想
    • 7.13 图的单源最短路径-Dijkstra实现
    • 7.14 贪心算法
    • 7.15 章节测试
  • 8 查找
    • 8.1 顺序查找
    • 8.2 折半查找
    • 8.3 二叉排序树的基本概念与查找
    • 8.4 二叉排序树的插入与生成
    • 8.5 二叉排序树的删除
    • 8.6 哈希表基本概念
    • 8.7 哈希函数
    • 8.8 哈希处理冲突
    • 8.9 章节测试
  • 9 排序
    • 9.1 排序基本概念
    • 9.2 直接插入排序
    • 9.3 希尔排序
    • 9.4 冒泡排序
    • 9.5 快速排序
    • 9.6 选择排序
    • 9.7 树形排序
    • 9.8 堆排序
    • 9.9 归并排序
    • 9.10 基数排序
    • 9.11 章节测试
  • 10 课程习题讲解
    • 10.1 习题讲解1(引论)
    • 10.2 习题讲解2(线性表)
    • 10.3 习题讲解3(栈和队列)
    • 10.4 习题讲解4(串)
    • 10.5 习题讲解5(多维数组和广义表)
    • 10.6 习题讲解6(树)
    • 10.7 习题讲解7(图)
    • 10.8 习题讲解8(查找)
    • 10.9 习题讲解9(排序)
  • 11 综合实验解析
    • 11.1 马踏棋盘1
    • 11.2 马踏棋盘2
    • 11.3 文件压缩
    • 11.4 文件解压
    • 11.5 校园导游图
    • 11.6 章节测试
  • 12 阅读
    • 12.1 阅读
  • 13 问卷调查
    • 13.1 问卷调查
直接插入排序
  • 1 学习目标
  • 2 视频

通过本次课程学习,达到如下学习目标:

1.熟练掌握直接插入排序算法思想,排序过程。

2.能够分析直接插入排序时间复杂度、空间复杂度和稳定性。