การเรียงลำดับฮีปใช้ทำอะไร
การเรียงลำดับฮีปใช้ทำอะไร

วีดีโอ: การเรียงลำดับฮีปใช้ทำอะไร

วีดีโอ: การเรียงลำดับฮีปใช้ทำอะไร
วีดีโอ: โครงสร้างข้อมูล: 14.7 การเรียงลำดับ - แบบฮีป 2024, อาจ
Anonim

NS การเรียงลำดับฮีป อัลกอริธึมแพร่หลาย ใช้แล้ว เพราะประสิทธิภาพ การเรียงลำดับฮีป ทำงานโดยแปลงรายการเป็น จัดเรียง เป็น กอง โครงสร้างข้อมูล ต้นไม้ไบนารีกับ กอง คุณสมบัติ. ในไบนารีทรี ทุกโหนดมีลูกหลานอย่างน้อยสองคน

เหตุใดเราจึงใช้การเรียงลำดับฮีป

Heapsort อัลกอริทึมมีจำกัด ใช้ เพราะ Quicksort เป็น ดีกว่าในทางปฏิบัติ กอง คิวลำดับความสำคัญที่ดำเนินการคือ ใช้แล้ว ในอัลกอริธึมกราฟ เช่น อัลกอริธึมของ Prim และอัลกอริธึมของ Dijkstra สถิติการสั่งซื้อ: กอง โครงสร้างข้อมูลสามารถ ใช้แล้ว เพื่อค้นหาองค์ประกอบที่เล็กที่สุด (หรือใหญ่ที่สุด) ที่ k ในอนาเรย์อย่างมีประสิทธิภาพ

ด้านบนนี้ การเรียงลำดับแบบฮีปทำงานอย่างไร NS heapsort อัลกอริทึมสามารถแบ่งออกเป็นสองส่วน ในขั้นตอนที่สอง a จัดเรียง อาร์เรย์ถูกสร้างขึ้นโดยการลบองค์ประกอบที่ใหญ่ที่สุดออกจาก.ซ้ำแล้วซ้ำอีก กอง (รากเหง้าของ กอง ) และแทรกลงในอาร์เรย์ NS กอง ได้รับการอัปเดตหลังจากลบแต่ละครั้งเพื่อรักษา กอง คุณสมบัติ. Heapsort สามารถดำเนินการแทนได้

ต่อมา คำถามคือ จุดประสงค์ของฮีปคืออะไร?

ในภาษาโปรแกรมบางภาษารวมถึง C และ Pascal, a กอง เป็นพื้นที่ของหน่วยความจำหลัก (หน่วยความจำ) ของคอมพิวเตอร์ที่สงวนไว้ล่วงหน้าซึ่งกระบวนการของโปรแกรมสามารถใช้เพื่อจัดเก็บข้อมูลในปริมาณที่ไม่แน่นอนซึ่งจะไม่ทราบจนกว่าโปรแกรมจะทำงาน

การเรียงลำดับฮีปคืออะไรและอัลกอริธึมของมันคืออะไร?

อัลกอริธึมการเรียงลำดับกอง . กองเรียง เป็นที่นิยมและมีประสิทธิภาพ อัลกอริทึมการเรียงลำดับ ในการเขียนโปรแกรมคอมพิวเตอร์ การเรียงลำดับฮีป ทำงานโดยการแสดงภาพองค์ประกอบของอาร์เรย์เป็นต้นไม้ไบนารีที่สมบูรณ์ชนิดพิเศษที่เรียกว่า กอง.