cuốn sách gpt4 ai đã làm

Đang cố gắng hiểu mức xóa tối thiểu của Min-Max Heap

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 06:08:01 31 4
mua khóa gpt4 Nike

Tôi muốn hiểu quá trình xóa vùng heap tối thiểu-tối đa hoạt động như thế nào, tôi đã tìm kiếm mã giả cho nó nhưng không tìm thấy gì và dường như tôi không thể yêu cầu mã giả ở đây. Vì vậy, đây là câu hỏi của tôi

g0

Bất cứ ai có thể chỉ ra logic "loại bỏ phần tử tối thiểu 7" và ít nhất cho tôi biết mã giả "cảm thấy như thế nào"?


biên tập:Nếu mọi người cho rằng tôi chưa thử bất cứ điều gì thì đây là một slide khác:

  1. [1.1]Tôi không hiểu:

    (dòng thứ 4): ...và sau đó chèn lại vào đống tối thiểu-tối đa.

    Đây là "chèn lại” Nó có gọi thủ tục chèn ban đầu không? Hay nó chỉ đề cập đến trường hợp theo sau nó?

    [1.2]

    (dòng thứ 8): Khóa nhỏ nhất trong heap min-max là một trong các khóa con hoặc cháu của gốc.

    Tôi không chắc chắn"cháu trai” có nên đệ quy bao gồm các cháu của họ hay không.

    Trình chiếu:g1


Tôi có thể hiểu chương trình "VerifyMax" đang được sử dụng khi chèn, không chắc chương trình này có được sử dụng khi xóa không...:

nhập mô tả hình ảnh ở đây

câu trả lời hay nhất

Thuật toán "có cảm giác" giống như thủ tục DeleteMin của min-heap bình thường (hoặc thủ tục DeleteMax của max-heap):

  1. Thay thế giá trị tối thiểu hiện tại (tức là phần tử đầu tiên trong vùng heap) bằng phần tử cuối cùng trong vùng heap.
  2. Giảm kích thước của heap xuống một.
  3. Sử dụng quy trình TrickleDown trên phần tử đầu tiên để khôi phục thuộc tính vùng nhớ heap.

TrickleDown phức tạp hơn một chút nhưng không phức tạp: bạn cần kiểm tra mối quan hệ tối thiểu và tối đa. Thông thường, điều này được thực hiện bằng cách kiểm tra con cháu của phần tử nhỏ giọt.

Về thuật toán - cố gắng hiểu delete-min của Min-Max Heap, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/53888694/

31 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress