68973

Сортування масивів

Лекция

Информатика, кибернетика и программирование

Стан об’єкту цілком і повністю визначається станом елементів масиву. Для роботи з об’єктом можна використовувати інтерфейс що містить наступний набір операцій: розміщення масиву динамічної пам’яті ініціалізація масиву проглядання вивід значень елементів масиву сортування масиву різними способами...

Украинкский

2014-09-28

30.5 KB

3 чел.

Лекція № 18

Тема: Сортування масивів

План

Сортування масивів

Специфікація класів для сортування масивів

Сортування масивів

Перше питання, на яке слід отримати відповідь, це визначити, чи може і |чи повинна програма бути об'єктно-орієнтованою чи ні? В даному випадку відповідь "Так" очевидна. Чому? Об'єктом є масив, який доцільно розмістити в динамічній пам'яті. Стан об'єкту цілком і повністю визначається станом елементів масиву. Для роботи з об'єктом можна використовувати інтерфейс, що містить наступний набір операцій: розміщення масиву динамічної пам'яті, ініціалізація масиву, проглядання (вивід) значень елементів масиву, сортування масиву різними способами (прості і складні сортування вибором, обміном або вставками), звільнення зайнятої пам'яті. Отже, сортування масиву зручно реалізувати з використанням класу або ієрархії класів, до проектування яких ми і перейдемо зараз.

Специфікація класу для сортування масиву

При проектуванні специфікації класу необхідно вирішити наступні питання:

-  вибрати доцільну ієрархію класів;

- визначити, чи достатнім є використання звичайних класів або слід застосувати шаблони класів;

- спроектувати структуру кожного з класів ієрархії (визначити склад членів класу, їх функціональне призначення і доступність);

- спроектувати файлову структуру класу (чи розміщувати цілком визначення класів в заголовних файлах або оголошення класів поміщати в заголовні файли, а реалізацію методів класів — у файли з розширенням срр).

Ієрархія шаблонних або звичайних класів. Оскільки сортування масиву є хоча і важливим, але все таки приватним завданням, що є одним з етапів складнішого завдання, в якому потрібно використовувати відсортований масив, то представляється доцільним реалізувати сортування масиву в одному класі або в ієрархії класів. Цей клас (класи) можна використовувати як базового (базових) при вирішенні завдань, що використовують відсортовані масиви. Як указувалося раніше, при сортуванні масивів використовується   наступний набір операцій: розміщення масиву в динамічній пам'яті, ініціалізація масиву, проглядання (вивід) значень елементів масиву, сортування масиву різними способами (прості і складні сортування вибором, обміном або вставками), звільнення зайнятої пам'яті. Аналізуючи цей набір операцій, неважко відмітити, що частина операцій (розміщення масиву в динамічній пам'яті, ініціалізація масиву, перегляд або виведення значень елементів масиву, звільнення зайнятої пам'яті) є типовою і використовується не тільки при сортуванні масиву, але і при вирішенні практично будь-яких інших завдань обробки масивів. Із сказаного виходить, що як вершина ієрархії класів слід використовувати базовий клас, в якому реалізовані наступні типові операції:

розміщення масиву в динамічній пам'яті (конструктор);

ініціалізація масиву значеннями, що читаються, наприклад, з файлу на магнітному диску;

перегляд або вивід, наприклад у файл, значень елементів масиву;

звільнення зайнятої масивом динамічної пам'яті (деструкція).

 

Одним з наступних за ієрархією класів, що пролягають нижче, може бути клас, похідний від базового класу, в якому реалізовані відомі методи сортування масивів.

Таким чином, отримуємо наступну ієрархію класів, яку можна використовувати для сортування масивів.

// Базовий клас: конструктор, деструкція, ініціалізація і виведення масиву

class SArTJB

{

};

// Похідний клас: різні методи сортування масивів

class SArTJD : public SArT_B

{

}

Цілком очевидно, що елементи сортованих масивів можуть бути різного типу. Тому для сортування масивів слід використовувати ієрархію шаблонних класів.

шаблон похідних класів повинні розміщуватися в різних заголовних файлах.


 

А также другие работы, которые могут Вас заинтересовать

29785. Классификация полевых кабелей связи. Конструкция и маркировка кабелей 63.5 KB
  Полевые кабели связи. Современные кабели связи классифицируются по ряду признаков в зависимости от назначения и области применения условий прокладки и эксплуатации спектра передаваемых частот конструкции материала и формы изоляции системы скрутки рода защитных покровов. В первую очередь кабели связи подразделяются на две основные группы: полевые и стационарные. Стационарные кабели предназначены для продолжительной службы; они обладают высокими и стабильными электрическими характеристиками и большой дальностью связи.
29786. Назначение, конструкция и ТТХ легкого полевого кабеля П-274М (внутриузлового кабеля ПТРК-5х2, кабеля дальней связи П-296М) 647 KB
  Назначение конструкция и ТТХ легкого полевого кабеля П274М внутриузлового кабеля ПТРК5х2 кабеля дальней связи П296М. Стальные проволоки выполняют роль грузонесущего элемента и обеспечивают необходимую прочность кабеля на разрыве. № п п Характеристика Кабель П274М П2 П268 П4 1 Емкость кабеля число пар 1 1 1 2 2 Наружный диаметр изолированной ТПЖ не более мм 23 17 34 22 3 Наружный диаметр оболочки кабеля мм 40 1 73 4 Прочность на разрыв кг 80 80 130 150 5 Строительная длина м на ТК2 П280М1 барабане типа Б...
29787. Принцип формирования линейного спектра сигналов аппаратуры П-327-2 по структурной схеме 72 KB
  Эксплуатационные измерения основных параметров кабелей. Измерение параметров полевых линий связи по постоянному и переменному току Эксплуатационные измерения линий связи проводятся с целью установления соответствия их параметров нормам а так же определения характера и места повреждения в случае аварии на линии. Эксплуатационные измерения производятся при:...
29788. Назначение и ТТХ основных средств механизации прокладки полевых кабелей связи 250.5 KB
  К ним относятся катушки кабельные барабаны станки комплект П280 для намотки кабеля шесты для подвески кабеля шанцевый инструмент.8 предназначены для прокладки кабелей дальней связи П296 и П270 а также кабеля П272 по поверхности земли и в грунт с барабанов; заглубления в грунт кабеля предварительно проложенного по поверхности земли; извлечения кабеля из грунта или снятия кабеля проложенного по поверхности земли. Глубина прокладки кабеля до 50 см от поверхности земли.; скорость прокладки кабеля 4 6 км ч; скорость снятия...
29789. Назначение и ТТХ измерительного прибора П-321М 103.5 KB
  Сигнал с передающего телеграфного аппарата ПЕР. В передатчике имеются генератор средняя несущая частота которого выбрана равной 3150 Гц и модулятор изменяющий частоту этого генератора на 55 гц или минус 55 Гц в зависимости от полярности сигнала на входе передатчика. Модулированный по частоте сигнал с уровнем 0 Нп подается на разделительные гнезда ТГФ блока фильтров. сигнал подается на полосовой фильтр передачи ПФ ПЕР.
29790. Классификация систем передачи информации (СПИ) по среде распространения сигналов. Структурная схема многоканальной системы передачи информации 61.5 KB
  Классификация систем передачи информации СПИ по среде распространения сигналов. Структурная схема многоканальной системы передачи информации. Классификация систем передачи информации по среде распространения сигналов. Многоканальная система передачи представляет собой сложный комплекс включающий линейные и станционные устройства предназначенные для получения определенного числа каналов на заданную дальность.
29791. Линейные методы разделения каналов. Принцип формирования линейного спектра в аппаратуре с частотным разделением каналов (ЧРК). Структурная схема 8.31 MB
  Отличительными признаками канальных сигналов в этой системе передачи являются разные неперекрывающиеся полосы частот которые занимают эти сигналы. Такое различие позволяет разделить канальные сигналы в приемной части аппаратуры с помощью электрических фильтров. Первичные информационные сигналы Cit могут быть различного вида. Другие сигналы характеризуются более широким спектром.
29792. Основные характеристики телефонного канала (канала тональной частоты) 446 KB
  Основные характеристики телефонного канала канала тональной частоты.1718 Остаточное затухание канала ТЧ r разность между уровнем сигнала измерительного генератора p0 с Rr = 600 Ом в согласованной нагрузке и уровнем и уровнем сигнала на выходе канала p2 нагруженного на сопротивление Rн = 600 Ом. Частотная характеристика остаточного затухания канала ТЧ измеряется или встроенными приборами или с помощью комплектов П321 П322 и П326.2 Амплитудная характеристика канала ТЧ называется зависимость его остаточного затухания от уровня...
29793. Классификация телефонных аппаратов и их схем. Мостовая противоместная схема 229 KB
  Тактикотехнические характеристики Аппаратура Азур–1 является двухпроводной двухполосной системой передачи с ЧРК обеспечивающей получение одного канала ТЧ в диапазоне частот 43 – 117 кГц. В режиме А в линию передается нижняя полоса частот линейного спектра 43 – 74 кГц а принимается верхняя полоса частот линейного спектра 86 – 117 кГц. В режиме Б в линию передается верхняя полоса частот линейного спектра а принимается нижняя. Наименование характеристики Значение Диапазон передаваемых частот кГц 412 Уровень передачи канала на выходе...