Щоб об’єднати елемент у максимальну купу, нам потрібно знайти максимальний з його дочірніх елементів і поміняти його місцями з поточним елементом. Ми продовжуємо цей процес, доки властивість купи не буде задоволена на кожному вузлі. Для нагромадження рухаємося від кореня до листя.3 сер 2022
Щоб вставити новий елемент, ви додайте його в кінець масиву (як останній лист у бінарному дереві). Потім ви порівнюєте новий елемент з його батьківським елементом і, якщо необхідно, міняєте їх місцями, доки властивість купи не буде відновлено.
Щоб збільшити розмір купи JVM сервера додатків
- Увійдіть на сервер адміністрування сервера додатків.
- Перейдіть до параметрів JVM.
- Відредагуйте параметр -Xmx256m. Цей параметр встановлює розмір купи JVM.
- Встановіть для параметра -Xmx256m більше значення, наприклад Xmx1024m.
- Збережіть нове налаштування.
Щоб створити максимальну купу, ви: Призначте йому значення. Порівняйте значення дочірнього вузла з батьківським вузлом. Поміняйте вузли місцями, якщо значення батьківського елемента менше, ніж значення будь-якого дочірнього (зліва чи справа). Повторюйте, доки найбільший елемент не опиниться в кореневих батьківських вузлах (тоді можна сказати, що властивість купи зберігається).
Завдання побудувати Max-Heap з масиву вище. Індекс останнього неліцевого вузла = (11/2) – 1 = 4. Отже, останній нелицевий вузол = 6. Щоб побудувати купу, об’єднайте тільки вузли: [1, 3, 5, 4, 6] у зворотному порядку. Heapify 6: поміняйте місцями 6 і 17.
Вставлення в максимальну купу Крок 1: Вставте вузол у першу доступну позицію порядку рівня. Крок 2: Порівняйте щойно вставлений вузол з його батьківським. Якщо щойно вставлений вузол більший, поміняйте його з батьківським. Крок 3: Продовжуйте крок 2, доки не буде відновлено властивість порядку купи.