【问题标题】:Microsoft Collections for .NET [closed]Microsoft Collections for .NET [关闭]
【发布时间】:2017-07-22 14:02:54
【问题描述】:

.NET 带有一些内置集合(堆栈、队列、字典、列表等),但缺少其他常见集合,如优先级队列。 NuGet 上有许多第三方集合库,但我想知道是否有一个官方的 Microsoft 库(例如现在称为 System.Collections.Immutable 的 BCL 不可变集合)库,其中包含(可变)优先级队列之类的东西?

编辑:重要说明(@rmunn 评论):

这个问题不是要为 X 推荐一个库,而是要问 一个事实问题,“是否有任何官方的 Microsoft 库 X?”

【问题讨论】:

  • 我苦苦搜索,但没有找到。但老实说,自己实施很容易,如果您不想这样做 - 如果您对此有些担心,很容易验证第三方实施是否有意义。
  • 没有官方的 Microsoft PriorityQueue 实现。您是否有某些原因不想使用第 3 方版本?
  • Priority queue in .Net的可能重复
  • 啊,有道理。我可以理解更喜欢官方解决方案而不是第三方解决方案。
  • 这个问题不应该被标记为离题。它不是要为 X 推荐一个库,它是在问一个事实问题,“是否有任何用于 X 的 官方 Microsoft 库?”。出于这个原因,我已投票决定重新开放它。

标签: c# .net collections f# priority-queue


【解决方案1】:

.NET 6+: .NET 6 添加了System.Collections.Generic.PriorityQueue<TElement,TPriority> 类。 FWIW 它是开源的,implemented in c#.

早期的 .NET Core 版本和 .NET Framework: Microsoft 已在 .NET Framework 中编写(并在线共享)2 internal PriorityQueue classes。你可以使用他们的代码。

另请参阅:Priority queue in .Net

【讨论】:

    【解决方案2】:

    我不确定您是否已经看过它,但System.Collections.Specializednamespace 包含一些隐藏的宝石。 System.Linq 命名空间也值得一看。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-30
      相关资源
      最近更新 更多