Frage

Ich bin ein oberer Ebene Software Engineering Student derzeit in einer Datenstrukturen und Algorithmen-Klasse. Unser Professor will, dass wir ein Programm mit der Liste Struktur in der C ++ STL gefunden schreiben. Ich habe versucht, C # mehr und mehr, zu verwenden, und frage mich, ob die Arraylist Struktur in .NET ein guter Ersatz für die STL-Liste Implementierung ist.

War es hilfreich?

Lösung

Wenn Sie nicht mit .NET 1.1 stecken, verwenden List<T> statt ArrayList. Aber was sind Sie grundsätzlich besorgt über? Angenommen, Sie haben nicht Liste zu verweisen haben - was brauchen Sie die entsprechende Datenstruktur zu tun

Andere Tipps

Es sollte möglich sein, diese Frage selbst zu beantworten. Was ist die Umsetzungsstrategie in STL-Listen verwendet? Was ist die eine von Arraylist? Ebenso wie die abstrakte API von STL Liste dargestellt ist (in Bezug auf Operationen zur Verfügung gestellt)? Vergleichen Sie dies mit STL-Liste: Was ist derjenige vor, dass der andere nicht

, wenn die STL-Liste Vorlagen verwendet, könnte man in System.Collections.Generic an der generischen List-Klasse suchen.

Um, C ++ STL haben keine Struktur namens "List". Ich denke, es ist eine „Liste“, die eine verknüpfte Liste ist. C # 's List, im Gegensatz, ist analog zu C ++' s-Vektor.

Die Arraylist-Klasse ist etwas veraltet. Es ist von den .NET 1.0 Zeiten, in denen Generika noch nicht existierten.

Sie sollten System.Collections.Generic.List stattdessen verwenden. Wie folgt aus:

List<int> myList = new List<int>();
myList.Add(1);
myList.Add(2);
System.Console.WriteLine(myList[0]);

Und ja, beide sind gute Substitute. Sie sollten die generische Liste obwohl verwenden, da es Art sicher und potenziell schneller ist.

Danke an alle

quertie, i vertippt und bedeutete Liste statt Liste ...

Die Zuordnung ist std :: list zu verwenden, um eine Liste von einfachen Strukturen, eine Struktur hinzuzufügen Polynome verwenden, die die Koeffizienten und die Macht der x halten würden ... einfach genug, ich weiß, aber da die Klasse ist angeblich Sprache -unabhängigen, ich wollte versuchen, c # zu verwenden,

Der nächste C # analog der std :: Liste ist System.Collections.List. Beide sind generische Sammlungen und implementieren, um die Standardliste Typ Aktionen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top