Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VOPROS_K_EKZAMENU_SiAOD.docx
Скачиваний:
67
Добавлен:
27.09.2019
Размер:
120.34 Кб
Скачать
  1. Стоимость операций с вторичной памятью.

Время, необходимое для поиска блока и чтение его в ОП достаточно велико по сравнению с временем, требуемым для обработки самих данных, размещенных в ОП.

При чтении с диска очередного блока время тратится на следующее:

  1. позиционирование счит головки над дорожкой, содержащей блок.

  2. ожидание пока требуемый блок окажется под считывающей головкой.

За время этих операций можно выполнить 100 000 машинных команд.

Оцениввая время работы алгоритмов, обрабатвающих данные, кот хранятся в файлах в 1ю очередь учитывают кол-во обращений к блокам. т е сколько раз проих считавание в ОП и запись блока во вторичную память. Такая операция наз доступом к блоку. Предполагается. что размер блока жестко фиксирован в ОП и зависит ОС. Мы не можем путем увеличения размера блока сократить кол-во обращений к нему. Мерой качества алгоритма работающего с внешней памятью явл кол-во обращений к блокам.

  1. Внешняя сортировка. Особенности внешней сортировки.

Внешняя отличается от внутренней и структура данных д.б. такой, чтобы сравнительно медленные внешние запоминающие устройства м. удовлетворить потребности алгоритмов сортировки. Большинство алгоритмов внутренней сортировки бесполезны в случае внешней. Методы сортировки д.б. другими.

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

При этом мы считаем, что данные хранятся в последовательном файле. В каждый момент времени нам доступна т. одна из записей и именно это выступает в качестве большого ограничения на доступность данных. Самые распространенные способы сортировки внешних данных – это сортировки с пом. слияния. Слияние означает объединение 2 или более последовательностей в одну упорядоченную последовательность с пом. повторяющегося выбора из доступных в данный момент элементов.

Предположим, что сортируемый нами файл состоит их 10 000 записей по 100 слов каждая.

В ОП м. поместиться т. 2 000 записей. В этом случае м. разбить наш файл на 5 подфайлов, рассортировать каждое их них, а затем их слить в 1 полностью отсортированный файл. Большинство методов внешней сортировки исп. подобный подход. Сначала файл делится на несколько подфайлов, а затем они сливаются в 1 ф.

  1. Понятие «серия», «слияние», «хвост», «фаза», «этап» в алгоритмах внешней сортировки.

Сущ. понятие серия – последовательность записей b1b2…bk , где bi <= bi+1

Файл из b1… bm записей делится на серии длиной к, если для всех i > 0 ki <= m

bk(i-1)+1, bk(i-1)+2…bki

Если m не делится нацело на К, то есть m = pk + q, q<k, то bm-q+1, bm-q+2…bm называется хвостом.

-1 2 5 -9 | 10 7 99 -25 | 29

29 – хвост

Слияние означает объединение 2-х или более упорядоченных последовательностей в 1 упорядоченную последовательность. . В общем случае: Из 2ух послед сравнивается 2 наименьших эл-та и в получаемый файл выводится меньший из них и далее процесс повторяется.

В сортировки слиянием начинают с 2-х файлов, организованных в виду серий длиной К. Назовем ф. ф1 и ф2. Для них д. выполняться след. условия:

  1. кол-во серий, вкл. хвосты в файлах ф1 и ф2 отличаются не больше, чем на 1.

  2. хотя бы 1 ф. может иметь хвост.

Действие по однократной обработке всего множества данных наз. фазой.

Наименьший подпроцесс повторение кот. составляет процесс сортировки наз. проходом или этапом.