C# Linq GroupBy使用什么算法?

C# Linq GroupBy使用什么算法?,c#,algorithm,C#,Algorithm,Linq GroupBy的性能似乎非常好,所以我想知道它在幕后使用了什么样的算法。与什么相比,“超级性能”是什么?我想它在工作中使用了类似于ToLookup的扩展。在许多方面,它就像一本字典,除了有多个值而不是一个值。我不想把它作为答案发布,因为它感觉像是偷东西,但读起来只是看看参考源中的源代码,net\fx\src\Core\System\Linq\Enumerable.cs实际上这个问题有点没有意义。GROUPBY实际上只是另一个Linq表达式,它由您使用的任何Linq提供程序实现。以上回复

Linq GroupBy的性能似乎非常好,所以我想知道它在幕后使用了什么样的算法。

与什么相比,“超级性能”是什么?我想它在工作中使用了类似于
ToLookup
的扩展。在许多方面,它就像一本字典,除了有多个值而不是一个值。我不想把它作为答案发布,因为它感觉像是偷东西,但读起来只是看看参考源中的源代码,net\fx\src\Core\System\Linq\Enumerable.cs实际上这个问题有点没有意义。GROUPBY实际上只是另一个Linq表达式,它由您使用的任何Linq提供程序实现。以上回复显示的所有情况都是针对Linq to对象的。LINQtoEntities显然使用SQL,PLinq也使用另一种算法。