【发布时间】:2012-01-08 10:16:57
【问题描述】:
从我看到的类似标题中,这些可能在 C# 中不可用。因为它们是如此基本和有用,所以它们必须在那里,但可能被称为别的东西。
如果它们可用,它们是否支持排序/搜索/插入/删除/唯一等 - 常用算法?
【问题讨论】:
标签: c# list vector stack queue
从我看到的类似标题中,这些可能在 C# 中不可用。因为它们是如此基本和有用,所以它们必须在那里,但可能被称为别的东西。
如果它们可用,它们是否支持排序/搜索/插入/删除/唯一等 - 常用算法?
【问题讨论】:
标签: c# list vector stack queue
您正在寻找 System.Collections.Generic 中的类以及 LINQ to Objects。
【讨论】:
大多数情况下,这些名称是您猜到的。 System.Collections.Generic namespace 包含:
List class(“向量”,“列表”)
Queue class(“队列”)Stack class(“堆栈”)由于它们都实现了IEnumerable<T> generic interface,因此您可以使用来自Enumerable class 的扩展方法,包括OrderBy/OrderByDescending(“排序”)和Distinct(“唯一”)。这三个类中的每一个都提供了自己特定的方法来添加和删除集合中的元素。
【讨论】:
它们是可用的,而且它们还支持 Linq 的 AWESOMENESS。这使您可以做很多更酷的事情,而不仅仅是您在 C++ 标准库中找到的基本算法。
【讨论】:
在 .NET 4.0 中,您有
System.Collections.Generic.Stack<T>
System.Collections.Generic.Queue<T>
还有很多其他的。
对于这些集合类的常见操作,请将Using System.Linq; 添加到您的 C# 代码中。
【讨论】: