C # контейнеры - вектор. список, очередь, стек и т. д. - PullRequest
6 голосов
/ 29 ноября 2011

Из похожих названий, которые я вижу, они, вероятно, недоступны в C #.поскольку они настолько просты и полезны, они должны быть там, но, вероятно, их называют чем-то другим.

Если они доступны, они поддерживают сортировку / поиск / вставку / удаление / уникальность и т. д. - обычные алгоритмы?

Ответы [ 4 ]

9 голосов
/ 29 ноября 2011

Вы ищете классы в System.Collections.Generic, а также LINQ to Objects.

5 голосов
/ 29 ноября 2011

Имена, по большей части, такие, какими вы их догадались. Пространство имен System.Collections.Generic содержит:

Поскольку все они реализуют IEnumerable<T> универсальный интерфейс , вы можете использовать с ними методы расширения Enumerable класса , включая OrderBy / OrderByDescending («сортировать») и Distinct («уникально»). Каждый из трех классов предоставляет свои собственные специальные методы для добавления и удаления элементов из коллекции.

2 голосов
/ 29 ноября 2011

Они доступны, и, более того, они поддерживают УДИВИТЕЛЬНОСТЬ Linq. Что позволяет вам делать намного больше круче, чем просто основные алгоритмы, которые вы найдете в библиотеке C ++ std.

0 голосов
/ 29 ноября 2011

В .NET 4.0 у вас есть

System.Collections.Generic.Stack<T>
System.Collections.Generic.Queue<T>

и многие другие.

Для обычных операций с этими классами коллекций добавьте Using System.Linq; в код C #.

...