Практикум по курсу "Объектно-ориентированное программирование" на языке C#. Андрианова А.А - 71 стр.

UptoLike

70
6. Классы - коллекции
В С# имеются специальные структуры данных, предназначенные для
работы с группами объектов. Простейшим типом таких структур является
массив. Более сложные структуры предполагают возможность
динамического изменения их размера, т.е. при необходимости можно в
структуру данных добавить новый элемент, или удалить существующий.
При этом сама структура данных изменяется. Такие структуры данных
называют динамическими. Они построены таким образом, чтобы операции
изменения размеров происходили быстро.
Простейшим примером динамической структуры данных является
динамический связный список – линейная структура данных, память под
хранение элементов которой выделяется в момент добавления элементов в
список. Простота изменения размера списка связана с тем, что вместе с
отдельным элементом списка хранится местоположение следующего за ним
элемента. Для получения доступа ко всем элементам достаточно знать адрес
первого элемента списка (который часто называют заголовком head).
Рис.6.1. Исходный список.
Операция добавления нового элемента в список происходит следующим
образом:
1) находится тот элемент, который должен предшествовать месту
вставки нового (current) (Рис.6.2 а);
2) создается новый элемент (help) (Рис.6.2 а);
3) указывается, что следующим за help будет тот элемент, который
следовал за current (Рис.6.2 б);
4) указывается, что следующим за current будет help (Рис.6.2 в).
                                         6. Классы - коллекции

     В С# имеются специальные структуры данных, предназначенные для
работы с группами объектов. Простейшим типом таких структур является
массив.    Более   сложные     структуры    предполагают    возможность
динамического изменения их размера, т.е. при необходимости можно в
структуру данных добавить новый элемент, или удалить существующий.
При этом сама структура данных изменяется. Такие структуры данных
называют динамическими. Они построены таким образом, чтобы операции
изменения размеров происходили быстро.
    Простейшим примером динамической структуры данных является
динамический связный список – линейная структура данных, память под
хранение элементов которой выделяется в момент добавления элементов в
список. Простота изменения размера списка связана с тем, что вместе с
отдельным элементом списка хранится местоположение следующего за ним
элемента. Для получения доступа ко всем элементам достаточно знать адрес
первого элемента списка (который часто называют заголовком head).




                         Рис.6.1. Исходный список.

    Операция добавления нового элемента в список происходит следующим
образом:
    1) находится тот элемент, который должен предшествовать месту
вставки нового (current) (Рис.6.2 а);
    2) создается новый элемент (help) (Рис.6.2 а);
    3) указывается, что следующим за help будет тот элемент, который
следовал за current (Рис.6.2 б);
    4) указывается, что следующим за current будет help (Рис.6.2 в).




                                                                      70