Алгоритм пирамидальной сортировки

Интерфейс программы


В соответствии с поставленной задачей, программа имеет интуитивно понятный интерфейс. Главное окно программы при её запуске распахивается на весь экран. Оно имеет меню, все команды которого понятны человеку, имеющему опыт работы с Windows. Два дочерние окна полностью занимают его рабочую область.

Одно из дочерних окон называется "Описание" и в нём отображается содержимое находящегося в каталоге программы файла describe.txt. Данный файл содержит описание рассматриваемого алгоритма. В комплекте поставки программы имеются 2 файла описания алгоритма – по Вирту и по Романовскому. Окно оснащено двумя линейками скроллинга, которые дают возможность просматривать большие тексты.

Второе дочернее окно называется "Визуализатор". В этом окне имеются:

  • Элементы управления – нажимающиеся кнопки.
  • Динамическое изображение массива в виде ленты.
  • Динамическое изображение массива в виде двоичного дерева (в соответствии с алгоритмом).
  • Инструкции, появляющиеся и исчезающие по мере протекания процесса.

Предусмотрены 3 нажимающиеся кнопки. Кнопка "сбросить" служит для немедленного прекращения процесса визуализации. Кнопка "шаг" выполняет один очередной шаг (итерацию) алгоритма. Кнопка "авто" запускает итерации алгоритма друг за другом с определённой задержкой. Задержка задаётся в файле инициализации(см. далее).

Файл инициализации располагается в каталоге программы и называется visual.ini. Файл имеет 2 секции: [Visual] и [Font]. Секция [Visual] содержит следующие параметры. Параметр Number имеет значение количества элементов в сортируемом массиве. Параметр Delay имеет значение величины задержки (промежутка времени между итерациями при нажатии на кнопку "авто"). Секция [Font] имеет 3 параметра. Параметры Width, Height и Font имеют значения соответственно ширины, высоты и названия шрифта, которым выводится текст описания алгоритма в соответствующем окне.

Литература

1.    Вирт Н. Алгоритмы и структуры данных. – М.: Мир, 1989.

2.    Кнут Д. Е. Искусство программирования для ЭВМ, том 3. Сортировка и поиск. – М.: Мир, 1978.

3.    Романовский И. В. Дискретный анализ. – СПб.: "Невский диалект", 1999.



Содержание раздела