![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
ARMAGEDON |
![]() ![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 12 Пол: Мужской Репутация: ![]() ![]() ![]() |
Срочно нужна программа внешней сортировки с использованием однофазного естественного слияния на языке Pascal, желательно с комментариями, пояснениями, а то курсач на носу!!! People,помогите кто чем может)))
|
![]() ![]() |
ARMAGEDON |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Пользователи Сообщений: 12 Пол: Мужской Репутация: ![]() ![]() ![]() |
Однофазная сортировка простым слиянием Фаза разделения файла А на два файла В и С не относится к сортировке. Она непродуктивна, хотя и заниммает половину всех операций по переписи. Очевидным улучшением (по быстродействию, но не по занимаемой памяти) рассмотренного выше алгоритма является объединение фазы разделения с фазой слияния. Вместо слияния в один файл результаты слияния необходимо сразу распределять по двум файлам, которые станут исходными для последующего прохода. Такая сортировка называется однофазовой сортировкой простым слиянием. очевидно, что для такой сортировки требуется уже не три, а четыре дополнительных файла. Рассмотрим выполнение однофазной сортировки на примере. Пусть задан файл А: 55 12 87 76 98 24 84 27 Разбиваем его на два файла: С - 55 12 87 76 D - 55 98 84 87 С - 12 24 55 98 B - 98 24 84 27 E - 12 24 27 76 B - 27 76 84 87 A - 12 24 27 55 76 84 87 98 Сортировка естественным слиянием В случае прямого слияния мы не получаем никакого преимущества, если данные уже являются частично упорядоченными. Размер сливаемых при каждом проходе последовательностей не зависит от существования более длинных уже упорядоченных последовательностей, которые можно было бы просто объединить. Сортировка, при которой всегда сливаются две самые длинные из возможных последовательностей, назвается естественным слиянием. Эта сортировка является двухфазной сортировкой слиянием с тремя лентами(файлами). Максимальную упорядоченную последовательность будем называть серией. Пусть имеется начальный файл А. Каждый проход состоит из фазы распределения серий из фалйа А поровну в файлы В и С и фазы слияния, объединяющей серии из файлов В и С в файл А. Процесс сортировки заканчивается, как только в файле А останется только одна серия. Рассмотрим сортировку естественным слиянием на примере (серии подчеркнуты). Пусть задан файл А: А - 17 31 05 59 13 41 43 76 11 23 29 47 03 07 71 02 19 57 37 61 B - 17 31 13 41 43 76 03 07 71 37 61 C - 05 59 11 23 29 47 02 19 57 A - 05 17 31 59 11 13 23 29 41 43 47 76 02 03 07 19 57 71 37 61 B - 05 17 31 59 02 03 07 19 57 71 C - 11 13 23 29 41 43 47 76 37 61 A - 05 11 13 17 23 29 31 41 43 47 59 76 02 03 07 19 37 57 61 71 B - 05 11 13 17 23 29 31 41 43 47 59 76 C - 02 03 07 19 37 57 61 71 A - 02 03 05 07 11 13 17 19 23 29 31 37 41 43 47 57 59 61 71 76 Hа основе рассмотренного выше алгоритма легко получить алгоритм однофазной сортировки естественным слиянием с четырьмя файлами. исходя из [b]"Однофазная сортировка простым слиянием" может быть можно получить алгоритм однофазной сортировки естественным слиянием с четырьмя файлами???[/b] |
what are the most common side ef |
![]()
Сообщение
#3
|
Гость ![]() |
cialis 5mg online uk
|
![]() ![]() |
![]() |
Текстовая версия | 15.04.2025 5:51 |