2015-03-18 13 views
8

Gibt es eine Möglichkeit der einSet data-structure in Powershell definieren?Set (Datenstruktur) in Powershell

In der Informatik ein Satz ist ein abstrakter Datentyp, die bestimmten Wert speichern kann, ohne besondere Reihenfolge und keine Werte wiederholt. Es ist eine Computerimplementierung des mathematischen Konzepts einer endlichen Menge. Im Gegensatz zu den meisten anderen Auflistungstypen testet man statt eines bestimmten Elements aus einer Menge in der Regel einen Wert für die Zugehörigkeit zu einer Menge.

Ich brauche eine Datenstruktur als Schlüsselspeicher zu verwenden, die:

  • keine-Wiederholungen sichert;
  • minimiert den Rechenaufwand, um ein Element abzurufen und zu entfernen.

Antwort

13

Sie können .NET HashSet Klasse verwenden, die unter System.Collections.Generic gefunden:

$set = New-Object System.Collections.Generic.HashSet[int] 

Die Kollektion garantiert einzigartige Gegenstände und die Add, Remove und Contains Methoden alle mit O (1) arbeiten Komplexität im Durchschnitt.