heapq
Python heapq moduli
❮ Python o‘rnatilgan modullari
Misol
Min-heap’ni saqlang va eng kichik elementlarni olib tashlang (pop):
import heapq
h = []
heapq.heappush(h, 3)
heapq.heappush(h, 1)
heapq.heappush(h, 2)
print([heapq.heappop(h) for _ in range(3)])
O‘zingiz sinab ko‘ring »
Ta’rif va qo‘llanilishi
heapq moduli oddiy Python ro‘yxatlari ustida heap (ustuvorlik navbati) algoritmlarini taqdim etadi.
Undan eng kichik elementni samarali qo‘shish/olish (push/pop) va ustuvorlikka asoslangan ish jarayonlarini amalga oshirish uchun foydalaning.
A’zolar
| A’zo | Tavsif |
|---|---|
| heapify() | Ro‘yxatni joyida (in-place), chiziqli vaqtda heap’ga aylantiradi. |
| heappop() | Heap’dan eng kichik elementni olib tashlaydi va qaytaradi. |
| heappush() | Heap invariantini saqlagan holda elementni heap’ga qo‘shadi. |
| heappushpop() | Elementni heap’ga qo‘shadi, so‘ng eng kichik elementni olib tashlab qaytaradi (alohida chaqiruvlardan samaraliroq). |
| heapreplace() | Eng kichik elementni olib tashlab qaytaradi, so‘ng yangi elementni qo‘shadi. |
| merge() | Bir nechta saralangan iteratsiya qilinadigan obyektni bitta saralangan iteratorga birlashtiradi. |
| nlargest() | n ta eng katta elementdan iborat ro‘yxatni qaytaradi. |
| nsmallest() | n ta eng kichik elementdan iborat ro‘yxatni qaytaradi. |
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
