Laden...

[gelöst] Suche Collection für sorted sets

Erstellt von Bit2_Gosu vor 15 Jahren Letzter Beitrag vor 15 Jahren 659 Views
B
Bit2_Gosu Themenstarter:in
116 Beiträge seit 2007
vor 15 Jahren
[gelöst] Suche Collection für sorted sets

Hallo liebes Forum!

Ich suche eine von folgenden zwei möglichkeiten:

  • eine performante(!) Klasse, deren Elemente sortiert sind (sorted list ist ja nur für key value pairs und ich weiß nicht ob performant)

  • eine möglichkeit die elemente eines hashset zu sortieren

wobei mir letzteres noch lieber wäre. Hat da jemand eine Idee? Meine Suche war bis jetzt erstaunlich erfolglos. Ich habe zwar die extension Methode OrderBy gefunden, aber die verlangt eine methode, die aus einem element den key extrahiert, was ich etwas merkwürdig finde..

H
704 Beiträge seit 2003
vor 15 Jahren

HashSet kann nicht sortiert werden, ist ja schließlich eine Set, also eine Menge und sowas kann per definition nicht sortiert werden.

Die sinnvollste Variante: Verwende eine System.Collections.Generic.List und verwende die Methode Sort(IComparer<T> comparer) und implementiere deinen eigenen Sortieralgorithmus.

Wenn du Key/Value Paare brauchst, ist eine System.Collections.SortedDictionary deine Wahl, intern wird ein Binärbaum implementiert. Falls du es noch schneller willst, musst dir wohl oder übel selber einen Baum implementieren (zB einen Rot-Schwarz-Baum).

[last.fm](http://www.last.fm/user/hauptmanAlpha/)
3.971 Beiträge seit 2006
vor 15 Jahren

Hallo Bit2_Gosu,
eventuell findest du unter Wintellect's Power Collections for .NET oder The C5 Generic Collection Library eine entsprechendes fertiges Set.

Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...