|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.12.2014, 12:05 | #1 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Рекурсивная сортировка слиянием
Сортирует массив используя рекурсивную сортировку слиянием
https://ru.wikipedia.org/wiki/Сортировка_слиянием up - указатель на массив который нужно сортировать down - указатель на массив с, как минимум, таким же размерои как у 'up', используется как буфер left - левая граница массива, передайте 0 чтобы сортировать массив с начала right - правая граница массива, передайте длинну массива - x чтобы сортировать массив до последнего элемента возвращает: указатель на отсортированный массив. Из за особенностей работы данной имплементации, отсортированная версия массива может оказаться либо в 'up' либо в 'down' Код:
Третий день голову ломаю, не могу понять в чём причина.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder Последний раз редактировалось Smitt&Wesson; 23.12.2014 в 12:15. |
23.12.2014, 12:20 | #2 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
Выход за границу массива.
При первоначальном вызове MergeSort последний аргумент - количество элементов (10) а должен быть индекс последнего элемента (9) |
23.12.2014, 13:15 | #3 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Цитата:
Ответ нашел. При вызове функции нужно задавать значение x-1. rez = MergeSort(iarr, buf, 0, x-1);
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder Последний раз редактировалось Smitt&Wesson; 23.12.2014 в 13:27. |
|
23.12.2014, 13:54 | #4 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
на входе (left перый сортируемый \right первый НЕсортируемый (следующий за последним!!)
на промежуточных Код:
Код:
Цитата:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 23.12.2014 в 13:57. |
|
23.12.2014, 14:49 | #5 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Цитата:
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[C++] Сортировка слиянием | syxov | Помощь студентам | 0 | 26.09.2012 21:46 |
Сортировка слиянием. С++ | Noizik | Помощь студентам | 1 | 09.05.2012 14:23 |
сортировка слиянием (C++) | DarkAltair | Помощь студентам | 7 | 11.10.2011 21:12 |
Сортировка слиянием C++ | PinkPink | Помощь студентам | 3 | 10.10.2011 22:44 |
СОРТИРОВКА СЛИЯНИЕМ | spawn969 | Помощь студентам | 5 | 12.05.2011 01:03 |