Sobes.tech
Middle

Heap push nə edir və necə element əlavə edir yığına?

sobes.tech Süni İntellekt

AI-dan cavab

Heap push — bu yeni elementi 'küp' (heap) məlumatlar strukturuna əlavə etmək əməliyyatıdır və küpün xüsusiyyətlərini (məsələn, minimum və ya maksimum) saxlayır.

Əlavə necə həyata keçirilir:

  1. Yeni element, küpü təmsil edən massivın sonuna yerləşdirilir.
  2. Sonra, "yuxarıya doğru süzülmə" (sift-up və ya bubble-up) əməliyyatı həyata keçirilir: element, valideyni ilə müqayisə edilir və əgər küp xüsusiyyəti pozulursa (məsələn, min-küpdə, element valideynindən kiçikdirsə), elementlər yer dəyişdirir.
  3. Bu proses, element düzgün mövqeyə çatana qədər təkrarlanır və küp xüsusiyyətləri bərpa olunur.

Bu şəkildə, heap push elementin əlavə olunmasını təmin edir və küpün sıralamasını qoruyur, bu da minimum və ya maksimum elementi səmərəli çıxarmağa imkan verir.

Python-da heapq modulundan istifadə etməklə nümunə:

import heapq

heap = [1, 3, 5, 7]
heapq.heapify(heap)  # Siyahını küp halına salır

heapq.heappush(heap, 2)  # Element 2-ni əlavə edir
print(heap)  # Sıralaması qorunan küp

Nəticədə, 2 elementi əlavə olunacaq və "yuxarıya doğru süzüləcək" ki, min-küp xüsusiyyətləri qorunsun.