Что такое неявная структура данных?И является ли куча неявной структурой данных для реализации приоритетной очереди? - PullRequest
1 голос
/ 20 января 2012

Мой вопрос может показаться детским, но я действительно не понимаю этого вопроса, так как я просто новичок в курсе структур данных.Я знаю, как работают max и min heap, но я не уверен, является ли heap неявной структурой данных для реализации очереди с приоритетами.

1 Ответ

4 голосов
/ 20 января 2012

Википедия возвращается: D

От артикул :

В информатике неявная структура данных - это структура данных, которая использует очень мало памяти, кроме фактических элементов данных ...

Так что да, куча будет соответствовать всем требованиям, потому что она может быть реализована в виде простого массива. Куча, которая реализует очередь с приоритетами, будет неявной структурой данных, но не потому, что она реализует очередь с приоритетами. Это потому, что кучи не используют ничего особенного для отслеживания своих элементов, только расположение массива.

Кроме того, я полностью не согласен с интерпретацией вашего друга. Для любой проблемы не существует «естественной» структуры данных, только те, которые оказываются очень удобными в данных обстоятельствах.

Вычислительные структуры и структуры данных - это абстрактные идеи, которые могут быть реализованы различными способами. Связанный список может быть реализован в куче, на жестком диске, через Интернет и в виде группы людей с заметками и номером телефона следующего человека. Называть весь их набор «естественной» структурой данных, используемой для какой-либо конкретной проблемы, неправильно.

...