heapq --- thuật toán hàng đợi heap#

Mô-đun này triển khai thuật toán hàng đợi min heap.

Hàng đợi heap về cơ bản là một danh sách có các phần tử được lưu trữ theo cách sao cho phần tử đầu tiên trong danh sách luôn là nhỏ nhất. Thao tác chèn và xóa giá trị nhỏ nhất đều là O(log n), khiến heap trở thành một triển khai hàng đợi ưu tiên thuận tiện được xây dựng trên danh sách thông thường.

Hàm#

heapq.heappush(heap: list, item: Any) None#

Đẩy item lên heap.

heapq.heappop(heap: list) Any#

Lấy phần tử đầu tiên ra khỏi heap và trả về nó. Ném ra IndexError nếu heap rỗng.

Phần tử được trả về sẽ là phần tử nhỏ nhất trong heap.

heapq.heapify(x: list) None#

Chuyển đổi danh sách x thành heap. Đây là thao tác tại chỗ.