C# 各种数据结构定义以及初始化

在 C# 中,常见的数据结构以及它们的初始化方式如下:

  1. 数组 (Array):

    • 定义:dataType[] arrayName = new dataType[length];

    • 初始化:

      复制代码
      dataType[] arrayName = new dataType[length] {value1, value2, ..., valueN};

      或者

      复制代码
      dataType[] arrayName = new dataType[length]; // 全部元素初始化为默认值
  2. 列表 (List):

    • 需要引用 System.Collections.Generic 命名空间

    • 定义:List<dataType> listName = new List<dataType>();

    • 初始化:

      复制代码
      List<dataType> listName = new List<dataType> {value1, value2, ..., valueN};
  3. 链表 (Linked List):

    • 使用 LinkedList<dataType>
    • 定义:LinkedList<dataType> linkedListName = new LinkedList<dataType>();
    • 链表节点的添加、删除等操作与 C++ 中略有不同
  4. 栈 (Stack):

    • 使用 Stack<dataType>
    • 定义:Stack<dataType> stackName = new Stack<dataType>();
  5. 队列 (Queue):

    • 使用 Queue<dataType>
    • 定义:Queue<dataType> queueName = new Queue<dataType>();
  6. 集合 (Set):

    • C# 中没有直接的 Set 类,可以使用 HashSet<dataType> 来表示集合
    • 定义:HashSet<dataType> setName = new HashSet<dataType>();
  7. 字典 (Dictionary):

    • 使用 Dictionary<keyType, valueType>
    • 定义:Dictionary<keyType, valueType> dictionaryName = new Dictionary<keyType, valueType>();
  8. 哈希表 (Hash Table):

    • C# 中的 Dictionary 就是哈希表的一种实现方式
  9. 堆 (Heap):

    • C# 中没有直接的堆数据结构,但可以使用 SortedSet<dataType> 或者自定义堆操作来实现堆功能
相关推荐
All for pursuit.1 小时前
【链表-9】146.LRU缓存
数据结构·c++·算法·leetcode
tang_04273 小时前
【Hi.Ltd 专题】第7期:Threading 采集线程、锁与 LRU 缓存
经验分享·c#·hi.ltd系列
彧azz3 小时前
图的最短路径:Dijkstra与Floyd算法
数据结构·笔记·学习
智购科技自动售卖机厂家3 小时前
设备一到夏天就频繁跳闸,从启动电流追到压缩机电容~YH
数据结构·人工智能·python·eclipse
A_nanda3 小时前
C# 界面卡顿:从定位到根治
c#
Logic1014 小时前
C语言/数据结构动态规划题解:Kadane算法求最大子数组和——O(n)时间O(1)空间
c语言·数据结构·动态规划·贪心·时间复杂度·算法题·最大子数组和
鹿角片ljp4 小时前
从 Kimi Cyber Reasoning 学习网络安全推理数据集:从 Reasoning SFT 到安全 Agent 数据设计
数据结构·算法
2501_930707784 小时前
使用C#代码为新创建的 Word 文档创建目录
c#·word
Logic1015 小时前
C语言/数据结构位运算题解:异或XOR找出数据表中的“独特编号“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
czhc11400756635 小时前
同一个数,两把尺子:六组“看着一样、其实不一样“
c#