|
Minimalni o’chirish(2) Yuqoridagi sonni o’z joyiga joylashtirish kerak. Minimalni o’chirish(3)
|
bet | 4/4 | Sana | 08.04.2022 | Hajmi | 484,3 Kb. | | #536461 |
| Bog'liq Maruza5
Minimalni o’chirish(2) - Yuqoridagi sonni o’z joyiga joylashtirish kerak.
Minimalni o’chirish(3) Minimalni o’chirish(4) Minimalni o’chirish(5) - int remove() {
- int result = heap[1];
- heap[1] = heap[size];
- size--;
- shift_down(1);
- return result;
- }
void shift_down(int i) { - void shift_down(int i) {
- while (2 * i <= size) {
- min = i;
- if (heap[2 * i] < heap[min]) {
- min = 2 * i;
- }
- if ((2*i+1 <= size) && (heap[2*i+1] <= heap[min])) {
- min = 2 * i + 1;
- }
- if (min == i) {
- break;
- }
- int t = heap[i];
- heap[i] = heap[min];
- heap[min] = t;
- i = min;
- }
- }
Topshiriq - heap dan foydalanib bir o’lchamli massiv elementlarini saralang.
- Savollar?
Do'stlaringiz bilan baham: |
|
|