|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Viktor Karev 2:5080/1003 02 Dec 2002 11:41:19 To : Viktor Karev Subject : Re: Выбоpки -------------------------------------------------------------------------------- Приветствия! Viktor Karev wrote: > Алгоритм получения следующей выборки в массиве A[1..N]: В ранее посланном алгоритме - ошибка. Конкретно - в пункте 3. > 1.Идя с конца, ищем i, для которого A[i]<A[i+1]. > 2.Если такого нет, то все выборки закончились, КОHЕЦ. > 3.Просеиваем элемент A[i] через элементы правее его, пока он не > станет на место. 3. Идя с конца последовательности до i+1 ищем первый элемент A[j] > A[i]. Меняем его местами с A[i]. > 4.Теперь все элементы A[i..N] упорядочены по убыванию. > 5.Меняем их местами, упорядочивая по возрастанию. > КОHЕЦ. Пример 0. 1 3 7 5 9 8 4 1. i=4, A[i]=5 2. ----- 3. 1 3 7 8 9 5 4 4. --- 5. 1 3 7 8 4 5 9 Виктор. --- ifmail v.2.15dev5 * Origin: USURT's FidoNET<->Internet Gate (news://news.c (2:5080/1003@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/14646cdf8a893.html, оценка из 5, голосов 10
|