第0课 - 数据结构实战开发引言

数据结构实战开发引言

专题一:内行看门道

第0课 - 课程目标(实现一个轻量级STL)

第1课 - 进阶高手的大门

第2课 - 数据的艺术

第3课 - 初识程序的灵魂(初识算法)

第4课 - 程序灵魂的审判(算法的度量、事后统计法、事前分析估算法 )

第5课 - 算法的时间复杂度

第6课 - 算法效率的度量(算法的时间复杂度 + 算法的空间复杂度)

第7课 - 课程学习小问答(数据结构课程该如何学习、学习数据结果的意义)

 

专题二: DTLib基础设施构建

第8课 - 泛型编程简介

第9课 - 智能指针示例(SmartPointer类)

第10课 - C++异常简介

第11课 - 异常类构建(Exception类)

第12课 - 顶层父类的创建(Object

第13课 - 类族结构的进化

 

 

专题三:线性表

第14课 - 线性表的本质和操作

第15课 - 线性表的顺序存储结构

第16课 - 顺序存储结构的抽象实现

第17课 - StaticList 和 DynamicList

第18课 - 顺序存储线性表的分析

第19课 - 数组类的创建(上)

第20课 - 数组类的创建(下)

第21课 - 线性表的链式存储结构

第22课 - 单链表的具体实现

第23课 - 顺序表和单链表的对比分析

第24课 - 单链表的遍历与优化

第25课 - 静态单链表的实现

第26课 - 典型问题分析(Bugfix)

第27课 - 再论智能指针(上)

第28课 - 再论智能指针(下)

第29课 - 循环链表的实现

第30课 - 双向链表的实现

第31课 - 老生常谈的两个宏(Linux)

第32课 - Linux内核链表剖析

第33课 - 双向循环链表的实现

  

 

专题四:栈和队列

第34课 - 栈的概念及实现(上)

第35课 - 栈的概念及实现(下)

第36课 - 队列的概念及实现(上)

第37课 - 队列的概念及实现(下)

第38课 - 两个有趣的问题

 

专题五:字符串类和递归

第39课 - 字符串类的创建(上)

第40课 - 字符串类的创建(下)

第41课 - KMP 子串查找算法

第42课 - KMP 算法的应用

第43课 - 递归的思想与应用(上)

第44课 - 递归的思想与应用(中)

第45课 - 递归的思想与应用(下)

 

专题六:排序

第46课 - 排序的基本概念

第47课 - 选择排序和插入排序

第48课 - 冒泡排序和希尔排序

第49课 - 归并排序和快速排序

第50课 - 排序的工程应用示例

 

专题七:树与二叉树

第51课 - 树的定义与操作

第52课 - 树的存储结构与实现

第53课 - 树中结点的查找操作

第54课 - 树中结点的插入操作

第55课 - 树中结点的清除操作

第56课 - 树中结点的删除操作

第57课 - 树中属性操作的实现

第58课 - 树形结构的层次遍历

第59课 - 树到二叉树的转换

第60课 - 二叉树的深层特性

第61课 - 二叉树的存储结构设计

第62课 - 二叉树中的结点查找操作

第63课 - 二叉树中的结点插入操作

第64课 - 二叉树中的结点删除与清除

第65课 - 二叉树中属性操作的实现

第66课 - 二叉树结构的层次遍历

第67课 - 二叉树的典型遍历方式

第68课 - 二叉树的比较与相加

第69课 - 二叉树的线索化实现

第70课 - 二叉树的经典面试题分析

 

 

专题八:图

第71课 - 图的定义与操作

第72课 - 图的存储结构(上)

第73课 - 图的存储结构(下)

第74课 - 图的遍历(BFS)

第75课 - 图的遍历(DFS)

第76课 - 最小生成树(Prim)

第77课 - 最小生成树(Kruskal)

第78课 - 最短路径(Dijkstra)

第79课 - 最短路径(Floyd)

第80课 - 最长不下降序列(完结)

第81课 - 数据结构课程总结

 

 

 

posted @ 2020-02-01 21:17  梦心之魂  阅读(148)  评论(0编辑  收藏  举报