Алгоритмы и структуры данных для начинающих: динамический массив

Иногда от коллекции требуется неограниченная вместимость и простота использования списка, но при этом константное время доступа к произвольному элементу, как в массиве. В этом случае используется список на основе массива — динамический массив (Array List). Также смотрите другие материалы этой серии: бинарное дерево, стеки и очереди, связный список, оценка сложности алгоритма, сортировка и множества. ArrayList — это коллекция, которая реализует интерфейс IList<T> и использует массив для хранения элементов. Как и связный список, ArrayList может хранить произвольное число элементов (ограниченное только объемом доступной памяти), но в остальном ведет себя как массив. Интерфейс IList<T> предоставляет все методы ICollection<T> и дополнительно — методы для чтения, вставки и удаления элементов по индексу. Код ниже сгенерирован с помощью команды «Implement Interface» в Visual Studio 2010 и, кроме автоматически сгенерированных заглушек для методов, содержит также: Вставка элементов в динамический массив отличается от вставки в связный список.