Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Аналіз деяких видів сортировок

Реферат Аналіз деяких видів сортировок





пиняючись у разі, коли

. Hайди елемент, менший x або

. Досягнуто початок послідовності.

void Pirmidalina9 (kop, razmer, iter) - функція сортуюча масив пірамідальної сортуванням.

Покроковий опис алгоритму

. Побудова піраміди

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

Якщо у вихідному масиві n елементів, то останні (n/2) елемента стають основою піраміди (ці елементи є листям дерева, тобто у них немає нащадків, тому для них вищевказане правило виконується автоматично) .

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



Таким чином, для того, щоб

кожен вузол дерева був більше своїх нащадків, кожен елемент масиву a [i] повинен бути більше або дорівнює елементам a [2 * i + 1] і a [2 * i + 2].


. Сортування


У цій частині алгоритму ми переміщаємо в кінець масиву максимальний елемент, потім виключаємо його з подальшого процесу сортування. Оскільки максимальний елемент завжди знаходиться на вершині піраміди, ми повинні поміняти місцями елементи a [0] і a [n-1] (тобто останній елемент). Причому елемент a [n-1] необхідно додавати так, щоб не порушився порядок піраміди (при цьому піраміду доведеться частково перебудувати). Далі ми будемо розглядати масив тільки до (n-2)-го елемента. p align="justify"> На наступному кроці ми міняємо місцями a [0] і a [n-2] і далі розглядаємо масив тільки до (n-3)-го елемента. Повторюємо всю цю процедуру до тих пір, поки в розглянутої частини масиву не залишиться один елемент. p align="justify"> int Zadaniemassiva (int midx, int midy, int & metod, long int & razmer, int & p) - функція в якій задається розмір масиву, метод заповнення масиву (рандома, за зростанням і за спаданням) . Максимально вводиться число масиву 24500 елементов.Пока НŠ​​буде заданий масив в програмі буде активно тільки 2 кнопки Завдання масиву і Exit .

int F1 (int midx, int midy) {- функція промальовує назва кнопок.

moveto ((midx-7 * 14), midy-30); ("Zadanie parametrov

} F (int midx, int midy, int h, int p) {- функція промальовує кнопки меню.y = midy; (int i = -30; i <= 120; i + = 30) {(p == 0) {//якщо змінна р = 0 то це означає що масив ще не заданий і актівн...


Назад | сторінка 8 з 16 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Виготовлення столу з масиву дерева
  • Реферат на тему: Аналіз методів сортування одновимірного масиву
  • Реферат на тему: Обробка одновимірних масивів. Виділення мінімального і максимального елеме ...
  • Реферат на тему: Поняття і елементи масиву
  • Реферат на тему: Розробка на мові асемблера алгоритму контролю на парність масиву даніх