Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций по КГ.pdf
Скачиваний:
81
Добавлен:
11.05.2015
Размер:
2.2 Mб
Скачать

Рисунок 33 – Сравнение алгоритмов заполнения многоугольника

4.3.4.2. Сортировка методом распределяющего подсчета

Понятно, что одна из важнейших работ в алгоритме построчного сканирования - сортировка. В связи с заведомо ограниченной разрешающей способностью растровых дисплеев (не более 2048) иногда целесообразно использовать чрезвычайно эффективный алгоритм сортировки методом распределяющего подсчета.

Для рассмотрения алгоритма предположим, что надо отсортировать числа, заданные в массиве с именем "Исходный_массив"; количество сортируемых чисел задается скаляром "Кол-во_чисел"; сортируемые числа J удовлетворяют условию:

0 £ J £ Max _ число

Для сортировки потребуются описания:

int

Max_число;

 

/* Верхняя граница значений */

int

*Повтор;

 

/* Длина этого массива = Max_число */

int

Кол_чисел;

 

/* Кол-во сортируемых чисел */

int

*Исходный_массив; /* Длина этого массива >= Кол_чисел */

int

*Результат;

/* Длина этого массива >= Кол_чисел */

int

ii,jj, kk;

/* Рабочие переменные */

1.Обнуляется служебный массив для подсчета числа повторений исходных кодов.

for (ii=0; ii<Max_число; ++ii) Повтор[ii]= 0;

73