16.11.2010, 11:08
общий
это ответ
Здравствуйте, Vilgelm!
1) В массиве 'АВЕОЛРКС' с чем сравнивается элемент 'Р'?
Распишем все сравнения буквы Р по шагам:
1. (В, Р)
2. (О, Р)
3. (Р, О)
4. (Л, Р)
5. (Л, Р)
6. (Р, О)
7. (Р, С)
В частности, обработка массива 'АВЕОЛРКС' выполняется на 4-м шаге.
При этом b'=<А,В,Е>
b''=<О,Л,Р,К,С>. Принимаем min='О'.
Сравниваем min с Л. Л меньше, теперь min=Л
Сравниваем min с Р (то есть, сравниваем Л с Р, поскольку min=Л)
Никаких других сравнений с Р на этом шаге нет.
2) По какому принципу ставятся точки
Точки ставятся под текущим минимумом.
Знаком подчеркивания отмечены элементы неупорядоченного списка b''
Стрелочками отмечен обмен элементов (если он имеет место)
3) Как происходит сама сортировка?
Модель сортировки.
Список b условно разбивается на два подсписка: упорядоченный b' и оставшийся b''.
b' первоначально пуст
b'' первоначально равен исходному списку b
b' получается путем выборки из b'' минимального элемента и добавлением его в конец b'
Рассмотрим 1 шаг.
b'=<>
b''=<'В','О','Р','А','Л','Е','К','С'>
Самый левый элемент b'' считаем минимальным min='B', точку ставим.
min<'О', точку не ставим.
min<'Р', точку не ставим.
min>'А', min='A'. точку ставим.
'Л','Е','К','С' больше текущего min, точки не ставим.
Сравниваем самый левый элемент, отмеченный точкой, с самым правым элементом, отмеченным точкой (то есть с текущим min). Так как эти элементы не совпадают (то есть точек, как минимум, две), обмениваем элементы местами. Таким образом к упорядоченный список b' =<'А'>,
неупорядоченный список b''=<'О','Р','В','Л','Е','К','С'>.
На 5-шаге точка одна, обмен не происходит
Источник. Проценко В.С., Чаленко П.И., Сорока Р.А. Техника программирования: Учеб.пособие. Киев: Выща шк., 1990