SHad-X
Новичок
сортировка методом Вставки нескольких элементов
Всем доброго времени суток! Обращаюсь к вам за помощью... уже часов 6 пытаюсь разобраться!!!
Мне нужно сделать сортировку Вставки одновременно нескольких элементов:
Модификация метода простых вставок заключается в том, что вместо одной переменной Х можно использовать несколько переменных Х1, Х2, ... Xm,
которые имеют значения элементов, подлежащих вставке в уже упорядоченную часть файла. Х1, X2, ... Xm упорядочены по возрастанию, поэтому сравнивая Xm в цикле по переменной i с элементами упорядоченной части, мы можем гарантировать, что, если очередной элемент k больше Xm, то он больше и остальных элементов. Перенос элементов исходного файла вперед в цикле по i выполняется на m элементов, то есть вместо k[i+1]=k в исходном алгоритме в модифицированном алгоритме записывается k[i+m]=k. При нахождении k такого, что он меньше Хm, Хm ставится на место k[i+1] и m уменьшается на 1. Далее цикл по i продолжается с новым m. Экономия числа переносов элементов достигается за счет переносов сразу на m элементов.
ВОТ! это все что я смог найти в инете про эту сортировку! и больше ничего! но я тут даже алгоритма понять не могу! что тут делается... помогите пожалуйста понять алгоритм! обьясните что нужно сделать, плз! а я попробую уже написать на PHP! заранее благодарен!
Всем доброго времени суток! Обращаюсь к вам за помощью... уже часов 6 пытаюсь разобраться!!!
Мне нужно сделать сортировку Вставки одновременно нескольких элементов:
Модификация метода простых вставок заключается в том, что вместо одной переменной Х можно использовать несколько переменных Х1, Х2, ... Xm,
которые имеют значения элементов, подлежащих вставке в уже упорядоченную часть файла. Х1, X2, ... Xm упорядочены по возрастанию, поэтому сравнивая Xm в цикле по переменной i с элементами упорядоченной части, мы можем гарантировать, что, если очередной элемент k больше Xm, то он больше и остальных элементов. Перенос элементов исходного файла вперед в цикле по i выполняется на m элементов, то есть вместо k[i+1]=k в исходном алгоритме в модифицированном алгоритме записывается k[i+m]=k. При нахождении k такого, что он меньше Хm, Хm ставится на место k[i+1] и m уменьшается на 1. Далее цикл по i продолжается с новым m. Экономия числа переносов элементов достигается за счет переносов сразу на m элементов.
ВОТ! это все что я смог найти в инете про эту сортировку! и больше ничего! но я тут даже алгоритма понять не могу! что тут делается... помогите пожалуйста понять алгоритм! обьясните что нужно сделать, плз! а я попробую уже написать на PHP! заранее благодарен!
