c#容器- vector,.列表、队列、堆栈等

本文关键字:队列 堆栈 列表 容器 vector | 更新日期: 2023-09-27 18:15:56

从类似的标题中我看到这些可能在c#中是不可用的。因为它们是如此基本和有用,所以它们一定在那里,但可能被称为其他东西。

如果它们可用,它们是否支持排序/搜索/插入/删除/唯一等-通常的算法?

c#容器- vector,.列表、队列、堆栈等

您正在寻找System.Collections.Generic中的类,以及LINQ to Objects

大多数情况下,这些名称就是您所猜测的名称。System.Collections.Generic命名空间包含:

  • List类("矢量"、"列表")
    • 参见LinkedList class
  • Queue class ("queue")
  • Stack class ("stack")

由于它们都实现了IEnumerable<T>泛型接口,您可以使用Enumerable类的扩展方法,包括OrderBy/OrderByDescending("排序")和Distinct("唯一")。这三个类中的每一个都提供了自己的特定方法,用于从集合中添加和删除元素。

它们是可用的,更重要的是它们支持Linq的惊人之处。它允许你做很多很多比你在c++ std库中找到的基本算法更酷的事情。

在。net 4.0中,

System.Collections.Generic.Stack<T>
System.Collections.Generic.Queue<T>

和许多其他的

对于这些集合类的常用操作,请在c#代码中添加Using System.Linq;