本课程主要讲解顺序表、链表、队列、栈、二叉树等常用数据结构和排序、查找等常用计算机基本算法。

*   第一章 数据结构和算法V1.0/

  *   时间复杂度/

    *   01_算法引入

    *   02_时间复杂度与大O表示法

    *   03_最坏时间复杂度与计算规则

    *   04_常见时间复杂度与大小关系

    *   05_代码执行时间测量模块timeit

    *   06_Python列表类型不同操作的时间效率

    *   07_Python列表与字典操作的时间复杂度

  *   顺序表/

    *   08_数据结构引入

    *   09_内存、类型本质、连续存储

    *   10_基本顺序表与元素外围顺序表

    *   11_顺序表的一体式结构与分离式结构

    *   12_顺序表数据区替换与扩充

    *   13_顺序表添加与删除元素_Python列表的实现

  *   单链表/

    *   14_链表的提出

    *   15_单链表的ADT模型

    *   16_Python中变量标识的本质

    *   17_单链表及结点的定义代码

    *   18_单链表的判空、长度、遍历与尾部添加结点的代码实现

    *   01_单链表尾部添加和在指定位置添加

    *   02_单链表查找和删除元素

    *   03_单链表与顺序表的对比

  *   双向链表和单向链表/

    *   04_双向链表及添加元素

    *   05_双向链表删除元素

    *   06_单向循环链表遍历和求长度

    *   07_单向循环链表添加元素

    *   08_单向循环链表删除元素

    *   09_单向循环链表删除元素复习及链表扩展

  *   栈和队列/

    *   10_栈与队列的概念

    *   11_栈的实现

    *   12_队列与双端队列的实现

  *   冒泡排序和插入排序/

    *   13_排序算法的稳定性

    *   14_冒泡排序算及实现

    *   15_选择排序算法及实现

    *   16_插入算法

    *   01_插入排序1

    *   02_插入排序2

  *   希尔排序和快速排序/

    *   03_希尔排序

    *   04_希尔排序实现

    *   05_快速排序

    *   06_快速排序实现1

    *   07_快速排序实现2

  *   归并排序和二分查找/

    *   08_归并排序

    *   09_归并排序_代码执行流程

    *   10_归并排序时间复杂度及排序算法复杂度对比

    *   11_二分查找

    *   12_二分查找时间复杂度

  *   树和二叉树/

    *   13_树的概念

    *   14_二叉树的概念

    *   15_二叉树的广度优先遍历

    *   16_二叉树的实现

    *   17_二叉树的先序、中序、后序遍历

    *   18_二叉树由遍历确定一棵树