Непейвода Н.Н. Программирование. Раздел 3

Непейвода Н.Н. Программирование. Страница 363

Анализ предложенного решения и сопоставление его с только что упомя­нутым решением показывает, что сам по себе факт использования очереди или стека не влияет на эффективность программы. Уровень эффективно­сти будет зависеть от качества реализаций этих двух структур данных. Как очередь, так и стек обеспечивают правильную дисциплину обращения к па­мяти для организации поиска кандидатов на обмен, что, собственно говоря, и есть причина использования линии задержки в данной программе. Выбор

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

С точки зрения демонстрации модуляризации уместно заметить, что сме­на одного модуля(IntQueue)на другой (работа со стеком или с очередью, базирующейся на списковой организации) практически не приводит к изме­нению алгоритма. С точностью до имен процедур решение сохраняется. Но это достигнуто благодаря тому, что модулем IntQueueна уровень исполь­зования вынесены только необходимые возможности, никак не завязанные на реализацию. Поддержка разделения контекстов языком программирова­ния обеспечила защиту от употребления реализационнозависимых средств. В свою очередь, именно это обстоятельство позволяет провести анализ раз­личных вариантов организации памяти.

Задания для самопроверки

В случае, когда у нас заранее известное количество очередей, мож­но эффективно организовать работу, воспользовавшись секциями initializationи finalizationмодуля. Проделайте это для случая, когда в программе всего одна очередь.

Реализовать стратегию кота, механически заменив в программе WWWиспользование модуля IntQueueна использование некоторого моду­ля для работы со стеком и вызовы подпрограмм модуля IntQueueна вызовы подпрограмм модуля работы со стеком.

Новости

  • 1
  • 2
Prev Next

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

24.01.2016

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

Роскосмос не планирует в течение ближайшего десятилетия осуществлять пуск тяжёлой ракеты-носителя А...

Ученые РФ опровергли выводы исследований о вреде ГМО

24.01.2016

Ученые РФ опровергли выводы исследований о вреде ГМО

Исследователи из Института проблем передачи информации (ИППИ РАН) проанализировали несколько самых п...

Летающие "Крокодилы"

24.01.2016

Летающие "Крокодилы"

20 удивительных фактов о боевом вертолете Ми-24.Этот вертолет стал таким же узнаваемым символом сове...

В Аргентине описали новый вид динозавра-гиганта

24.01.2016

О ранее неизвестном виде динозавра, относящемуся к инфраотряду зауроподов, рассказали аргентинские п...

Реклама