3
เหตุใดอัลกอริทึมของ Dijkstra จึงใช้ปุ่มลดขนาด
อัลกอริทึมของ Dijkstra ได้รับการสอนให้ฉันมีดังนี้ while pqueue is not empty: distance, node = pqueue.delete_min() if node has been visited: continue else: mark node as visited if node == target: break for each neighbor of node: pqueue.insert(distance + distance_to_neighbor, neighbor) แต่ฉันได้อ่านเกี่ยวกับอัลกอริทึมและมีหลายเวอร์ชันที่ฉันเห็นว่าใช้ปุ่มลดขนาดแทนที่จะเป็นส่วนแทรก เหตุใดจึงเป็นเช่นนี้และทั้งสองแนวทางแตกต่างกันอย่างไร