Datenstrukturen: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
Zeile 13: | Zeile 13: | ||
<tr><td class="blank"></td><th colspan="6">Laufzeiten von Methoden</th><td class="blank"></td></tr> | <tr><td class="blank"></td><th colspan="6">Laufzeiten von Methoden</th><td class="blank"></td></tr> | ||
<tr><td class="blank"></td><th>Add</th><th>Remove</th><th>ElementAt</th><th>Contains</th><th>Clear</th><th>Count</th><th>Element-Typ</th><th>[[ThreadSafety|Thread-safe]]</th><th>Bemerkungen</th></tr> | <tr><td class="blank"></td><th>Add</th><th>Remove</th><th>ElementAt</th><th>Contains</th><th>Clear</th><th>Count</th><th>Element-Typ</th><th>[[ThreadSafety|Thread-safe]]</th><th>Bemerkungen</th></tr> | ||
<tr><th>[http://msdn.microsoft.com/en-us/library/bb359438.aspx HashSet<T>]</th><td>O(1)<br>O(n) wenn Count + 1 > Capacity </td><td>O(1)</td><td></td><td></td><td></td><td></td><td></td><td></td><td class="close">keine Duplikate<br>keine Ordnung</td></tr> | <tr><th>[http://msdn.microsoft.com/en-us/library/bb359438.aspx HashSet<T>]</th><td>O(1)<br>O(n) wenn Count + 1 > Capacity </td><td>O(1)</td><td>?</td><td>O(1)</td><td>O(n)</td><td>O(1)</td><td>T</td><td>Nein</td><td class="close">keine Duplikate<br>keine Ordnung</td></tr> | ||
<tr><th>[http://msdn.microsoft.com/en-us/library/he2s3bh7.aspx LinkedList<T>]</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td class="close"></td></tr> | <tr><th>[http://msdn.microsoft.com/en-us/library/he2s3bh7.aspx LinkedList<T>]</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td class="close"></td></tr> | ||
<tr><th>[http://msdn.microsoft.com/en-us/library/6sh2ey19.aspx List<T>]</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td class="close"></td></tr> | <tr><th>[http://msdn.microsoft.com/en-us/library/6sh2ey19.aspx List<T>]</th><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td class="close"></td></tr> |
Version vom 18. April 2009, 21:02 Uhr
Hinweise
- n entspricht immer dem Count der Datenstruktur, d.h. der Anzahl an Elementen in der Struktur.
- Falls nicht anders angegeben sind Laufzeiten immer Average Case.
- Alle Links zu den Datenstrukturen zeigen auf die englische Version der MSDN. Diese ist typischerweise vollständiger und genauer als ihre deutsche Übersetzung.
- Die meisten der hier vorgestellten Datenstrukturen sind Generics. Ihre Verwendung wird im Generic-Artikel erklärt.
- Mit Element-Typ wird hier der Wert bezeichnet, den der Enumerator bei einer foreach-Anweisung zurückgibt.
Laufzeiten und Eigenschaften (nach MSDN)
...
Laufzeiten von Methoden | |||||||||
---|---|---|---|---|---|---|---|---|---|
Add | Remove | ElementAt | Contains | Clear | Count | Element-Typ | Thread-safe | Bemerkungen | |
HashSet<T> | O(1) O(n) wenn Count + 1 > Capacity | O(1) | ? | O(1) | O(n) | O(1) | T | Nein | keine Duplikate keine Ordnung |
LinkedList<T> | |||||||||
List<T> | |||||||||
Queue<T> | |||||||||
Stack<T> | |||||||||
SynchronizedCollection<T> |
...
Laufzeiten von Methoden | |||||||||
---|---|---|---|---|---|---|---|---|---|
Add | Remove | ElementAt | Contains | Clear | Count | Element-Typ | Thread-safe | Bemerkungen | |
Dictionary<TKey, TValue> | |||||||||
SortedDictionary<TKey, TValue> | |||||||||
Hashtable | |||||||||
SortedList<TKey, TValue> |