在 C# 中,常见的数据结构以及它们的初始化方式如下:
数组 (Array):
- 定义:
dataType[] arrayName = new dataType[length];
- 初始化:
或者dataType[] arrayName = new dataType[length] {value1, value2, ..., valueN};
dataType[] arrayName = new dataType[length]; // 全部元素初始化为默认值
- 定义:
列表 (List):
- 需要引用
System.Collections.Generic
命名空间 - 定义:
List<dataType> listName = new List<dataType>();
- 初始化:
List<dataType> listName = new List<dataType> {value1, value2, ..., valueN};
- 需要引用
链表 (Linked List):
- 使用
LinkedList<dataType>
类 - 定义:
LinkedList<dataType> linkedListName = new LinkedList<dataType>();
- 链表节点的添加、删除等操作与 C++ 中略有不同
- 使用
栈 (Stack):
- 使用
Stack<dataType>
类 - 定义:
Stack<dataType> stackName = new Stack<dataType>();
- 使用
队列 (Queue):
- 使用
Queue<dataType>
类 - 定义:
Queue<dataType> queueName = new Queue<dataType>();
- 使用
集合 (Set):
- C# 中没有直接的 Set 类,可以使用
HashSet<dataType>
来表示集合 - 定义:
HashSet<dataType> setName = new HashSet<dataType>();
- C# 中没有直接的 Set 类,可以使用
字典 (Dictionary):
- 使用
Dictionary<keyType, valueType>
类 - 定义:
Dictionary<keyType, valueType> dictionaryName = new Dictionary<keyType, valueType>();
- 使用
哈希表 (Hash Table):
- C# 中的 Dictionary 就是哈希表的一种实现方式
堆 (Heap):
- C# 中没有直接的堆数据结构,但可以使用
SortedSet<dataType>
或者自定义堆操作来实现堆功能
- C# 中没有直接的堆数据结构,但可以使用