c#常用数据结构

1.集合 List:将一推数据类型相同的数据放入到一个容器内,该容器就是集合,内存中开辟的一连串空间。
 	
 	特点:
 	
	1)、可通过索引访问的对象的强类型。

	2)、是ArrayList类的泛型等效类。

	3)、可以使用一个整数索引访问此集合中的元素;索引从 零开始。

	4)、允许重复元素。

	List<T>集合的方法:

	01. Add    将对象添加到 List<T> 的结尾处。

	02. AddRange    将指定集合的元素添加到 List<T> 的末尾。

	03. Clear    从 List<T> 中移除所有元素。    

	04. Contains    确定某元素是否在 List<T> 中。

	05. Exists     确定 List<T> 是否包含与指定谓词所定义的条件相匹配的元素。

	06 . IndexOf(T) 搜索指定的对象,并返回整个 List<T> 中第一个匹配项的从零开始的索引。  

	07. Insert    将元素插入 List<T> 的指定索引处。

	08. Remove    从 List<T> 中移除特定对象的第一个匹配项。

	09. Sort()     使用默认比较器对整个 List<T> 中的元素进行排序。

	List<T>集合的遍历方法有两种:for和foreach

2.字典 Dictionary:	

	特点:

    1)、从一组键(Key)到一组值(Value)的映射,每一个添加项都是由一个值及其相关连的键组成

 	任何键都必须是唯一的,键不能为空引用null,若值为引用类型,则可以为空值。

	2)、Key和Value可以是任何类型(string,int,custom class 等)。

	字典 Dictionary的方法:

	01. Comparer:           获取用于确定字典中的键是否相等的 IEqualityComparer。

  	02.Count:                  获取包含在 Dictionary中的键/值对的数目。

  	03.Item:                    获取或设置与指定的键相关联的值。

  	04.Keys:                   获取包含 Dictionary中的键的集合。

  	05.Values:                获取包含 Dictionary中的值的集合。

  	06.Add:                    将指定的键和值添加到字典中。

  	07.Clear:                  从 Dictionary中移除所有的键和值。

  	08.ContainsKey:      确定 Dictionary是否包含指定的键。

  	09.ContainsValue:   确定 Dictionary是否包含特定值。             

  	10.GetEnumerator:  返回循环访问 Dictionary的枚举数。

  	11.GetType:             获取当前实例的 Type。 (从 Object 继承。)

  	12.Remove:             从 Dictionary中移除所指定的键的值。

  	13.ToString:             返回表示当前 Object的 String。 (从 Object 继承。)

  	14.TryGetValue:      获取与指定的键相关联的值。

3. 队列 Queue  定义方式:Queue<T> queue = new Queue<T>();
	
	特点:先进先出

	队列 Queue的方法:

	01.Clear:  清空队列

	02.Contains:  判断某个元素是否在队列中

	03.Dequeue:  移除并返回在 Queue 的开头的对象。

	04.Enqueue:  向 Queue 的末尾添加一个对象。

4. 栈 Stack 	定义方式:Stack<T> stack = new Stack<T>();

	特点:后进先出

	栈 Stack的方法:

	01.Pop   移除并返回在 Stack 的顶部的对象

  02.push  向 Stack 的顶部添加一个对象

  03.peek  返回在 Stack 的顶部的对象,但不移除它

  04.ToArray  创建数组并将栈元素复制到其中

  05.Contains   判断一个元素是否在栈中

  06.Clear  从 Stack 中移除所有的元素。

  

原文地址:https://www.cnblogs.com/0315cz/p/8482994.html