什么是数据结构 数据+关系
数据逻辑结构(关系) 1.集合 2.线性结构 3.树结构 4.图结构或网状结构
存储结构 1.顺序存储结构 2.链式存储结构 3.索引存储方法 4.散列存储方法
数据类型 原子类型 结构类型
1.算法的时间复杂度 O 对应的数量级 (T(n)=O(f(n)))
2.算法的空间复杂度 (S(n)=O(f(n))) 2.1 算法本身占用的空间 2.2 算法的运行时占用的空间 2.3 算法运行时临时占用的空间
- 算法的评价标准: 分为两种:时间复杂度 空间复杂度
2.线性表 1.顺序表(数组(array),动态数组(list)) 2.链表(单向,双向,循环列表) 3.类型安全 4.探讨.net framework 底层线性表的实现方式 趣味算法:面积问题 约瑟夫
3 栈和队列 1队列的基本用法 2.分析微软底层队列和栈的实现方法 趣味算法:返回不重复的实现。
4.串(3) 1.string基本用法 2.StringBuilder 3.串模式匹配 3.1.Brute-Force算法 3.2.KMP算法 3.3.对KMP算法进行改进,优化 趣味算法:中奖彩票
5.树 1.二叉树的基本概念 1.1二叉树的存储结构 1.2二叉树的遍历 1.2.1. 深度优先 1.2.2. 广度优先遍历 2.1线索二叉树 2.1.1 线索二叉树的实现 2.1.1 中序线索二叉树 3.1 树和森林 3.1 树的存储结构 3.2 树.森林,二叉树的转换 4.1 二叉树的画法(程序实现) 5. 树的程序实现 趣味算法:魔术师的秘密
6、图( 1. 图的表示(1) 2. 图的存储结构 2.1 邻接矩阵表示法 2.2 邻接表表示发 3. 图的遍历(1.5) 3.1 深度优先 3.2 广度优先 4. 最小生成树(2.5) 4.1 普利姆算法 4.2 克鲁斯卡尔算法 5.佛洛依德算法(1) 5. 总结 迷宫算法(打造自己的迷宫) (1)
六、排序(4)
1. 冒泡排序与快速排序
2. 直接插入排序与希尔排序
3. 堆排序
4. 归并排序
5. 各种排序比较
6. 二分查找