在 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# 中没有直接的堆数据结构,但可以使用