刚刚结束的大二上学期学习了数据机构C语言版这门课,在接下来的一个月中准备把课程的代码和知识点总结一下,就有了这个专题:数据结构C语言实现,在这里我将用C语言实现最基本的数据结构以及一些基本的算法,以下是我这个专题的内容:
1. 数据结构及算法简介: 主要介绍数据结构及算法的基础知识,一些基本的概念和术语,以及算法的定义、算法的特性、算法的时间复杂度和空间复杂度
2.顺序表的定义及算法实现: 主要介绍顺序表的定义及特点,实现顺序表的存储结构以及基本操作
3.单链表的定义及算法实现: 主要介绍单链表的定义和表示,实现单链表的存储结构以及基本操作
4.双向链表的定义及算法实现: 主要介绍双向链表的定义和表示, 实现双向链表的存储结构以及基本操作
5.循环链表的定义及算法实现: 主要介绍循环链表的定义和表示, 实现循环链表的存储结构以及基本操作
6.有关顺序表和单链表的习题: 解决一些常见的有关顺序表和单链表的习题,比如说两个表的合并,表的倒置等问题
7.顺序栈及循环队列的定义及算法实现: 主要介绍顺序栈及循环队列的定义及特点,实现顺序栈及循环队列的存储结构和基本操作
8.链栈及链队的定义及算法实现: 主要介绍链栈及链队列的定义及特点,实现链栈及链队列的存储结构和基本操作
9.栈与递归问题: 主要介绍递归算法,递归与栈的关系,介绍一些经典的递归算法
10.字符串的定义及算法实现: 主要介绍字符串的定义及特点, 实现字符串的存储结构以及基本操作
11.字符串的模式匹配算法: 主要介绍BF算法和KMP算法
12.二叉树的定义及算法实现: 主要介绍树、二叉树的定义及性质、二叉树的存储结构、线索二叉树的定义, 实现二叉树的遍历以及线索二叉树的构造、遍历
13.哈夫曼树的定义及算法实现: 主要介绍哈夫曼树的基本概念,实现哈夫曼树的构造以及哈夫曼编码算法
14.图的定义及存储结构及算法实现: 主要介绍图的定义及基本术语,介绍几种图的存储结构,实现图的深度优先遍历和图的广度优先遍历算法
15.图的应用: 介绍最小生成树、最短路径、拓扑排序、关键路径的定义及特点,实现求最小生成树的普里姆算法和克鲁斯卡尔算法,实现求最短路径的迪杰斯特拉算法和弗洛伊德算法那,实现求拓扑排序的算法,实现求关键路径的算法