一.群集
数据结构按线性分类群集
群集(Collection)
1.线性群集
1.1 直接存取群集
数据类型相同的元素群集,通过整数型索引进行存取
1.11 数组(Array类)
1.12字符串(String)
1.13结构(Struct)
1.2顺序存取群集(线性表)
通过数据项的位置进行存取。可以有序,也可以无序。
1.21 有序线性表
1.211 栈(Stack类)
后进先出的结构。入栈(push),出栈(pop)。常用语算术表达式的计算和平衡符号。
1.212 队列(Queue类)
先进先出的结构。入队,出队。为模拟等待队列产生极好的结构
1.22 无序线性表(通用的索引群集)
1.221 散列表
储存了一组与键相关联的数据值
2.非线性群集
2.1层次群集
2.11 树
2.111 二叉树
2.1111二叉查找树
2.112 堆
堆排序
2.2 组群集
2.21 集合
无序数据值的群集,数据值唯一。数组则为可重复的。数组可理解为高中数学中的数列。集合也可以理解为高中数学中的集合。
2.22 图
由节点集合和边集合组成。
2.23 网络
特殊类型的图。边被赋予了权。
泛型编程
解决“代码膨胀”
泛型数据类型
VoidSwap<T>()
{Ttemp;}
泛型类
ClassNode<T>
{Tdata;}
时间测试
考虑:仅为当前进程所用时间,不含其它同时运行的进程。
考虑:无用单元收集,即垃圾回收。
.Net环境为执行无用单元收集调用提供了专门的对象:GC
//
// 摘要:
// 强制对所有代进行即时垃圾回收。
[SecuritySafeCritical]
public static voidCollect();
//
// 摘要:
// 挂起当前线程,直到处理终结器队列的线程清空该队列为止。
[SecuritySafeCritical]
public static voidWaitForPendingFinalizers();