Что такое контейнер и чем он отличается от других структур данных? - PullRequest
0 голосов
/ 13 октября 2019

Пока я изучал Руководство по разработке алгоритма от Skienna , и я наткнулся на предложение, которое говорит:

Мы используем термин container для обозначения структуры данных, которая позволяет хранить и извлекать элементы данных независимо от содержимого .

Мой вопрос: что такое контейнер? Какая структура данных является контейнером и чем отличается от других структур данных? Это тип коллекции, такой как список, словари или другой? Что это означает разрешает хранение и извлечение элементов данных независимо от содержимого ?

1 Ответ

1 голос
/ 13 октября 2019

Контейнер имеет классическое определение здесь :

В информатике контейнер - это класс, структура данных или абстрактный тип данных (ADT), экземпляры которогоявляются коллекциями других объектов. Другими словами, они хранят объекты организованным способом, который следует определенным правилам доступа. Размер контейнера зависит от количества объектов (элементов), которые он содержит. Базовые (унаследованные) реализации различных типов контейнеров могут различаться по размеру и сложности и обеспечивать гибкость при выборе правильной реализации для любого конкретного сценария.

Следовательно, ответ:

Типы абстрактных данных контейнера включают в себя:

  • очереди FIFO
  • стеки LIFO
  • очереди приоритетов
  • массивы и их производные
  • Связанные списки
  • Таблицы поиска (LUT)
  • Структуры данных, связанные с ключами
    • Наборы, содержащие и индексирующие объекты по значению или по определенному свойству;
    • Карты, ассоциирующие с каждым ключом «значение» для поиска
  • Двоичные деревья поиска (BST), в частности самобалансирующиеся BST
  • Хеш-таблицы
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...