ขั้นตอนวิธีการลบย้อนกลับ

ขั้นตอนวิธีการลบย้อนกลับ (อังกฤษ: Reverse-delete algorithm) เป็นขั้นตอนวิธีในทฤษฎีกราฟที่ใช้สำหรับ ต้นไม้แผ่ขยายต่ำสุด (minimum spanning tree) ที่มีเส้นเชื่อม เชื่อมทุกปมต่อกันทั้งกราฟ และเส้นเชื่อมระหว่างคู่ปมแต่ละเส้นมีน้ำหนักเส้น ขั้นตอนวิธีนี้เป็น ขั้นตอนวิธีแบบละโมบ (Greedy algorithm) ซึ่งเป็นการย้อนกลับของ ขั้นตอนวิธีของครูสกาล (Kruskal’s algorithm) ที่ใช้ในการหาต้นไม้แผ่ขยายต่ำสุด ขั้นตอนวิธีของครูสกาลจะเริ่มจากกราฟที่ว่างเปล่า แล้วเพิ่มขึ้นทีละเส้นเชื่อม แต่ขั้นตอนวิธีการลบย้อนกลับนี้เริ่มจากกราฟเดิมที่สมบูรณ์แล้วลบออกทีละเส้นเชื่อมจากกราฟนั้นแทนโดยขั้นตอนวิธีดังกล่าวทำงาน ดังนี้ขั้นตอนวิธีการลบย้อนกลับต้องมีการเชื่อมต่อกันในกราฟ และก่อนการลบกราฟบางส่วนออก ต้องมั่นใจว่าจะไม่ทำให้กราฟขาดออกจากกัน(คือเมื่อลบเส้นเชื่อมแล้วกราฟจะยังคงเชื่อมต่อกันไม่แยกออกเป็นส่วนๆ) เส้นเชื่อมต่างๆจะถูกลบโดยขั้นตอนวิธีนี้ทีละเส้นเป็นวงจรไปเรื่อยๆ ขั้นตอนวิธีนี้จะเริ่มจากเส้นเชื่อมที่มีน้ำหนักมากที่สุด และลดลงตามลำดับน้ำหนักไปเรื่อยๆ โดยเส้นเชื่อมที่ถูกลบไปจะเป็นเส้นเชื่อมที่มีค่ามากที่สุดในวงจร ดังนั้นตามความหมายของต้นไม้แผ่ขยายต่ำสุด เส้นเชื่อมที่ถูกลบออกไปโดยขั้นตอนวิธีนี้จะไม่เป็นส่วนของ ต้นไม้แผ่ขยายต่ำสุด

ใกล้เคียง

ขั้นตอนวิธีแบบยุคลิด ขั้นตอนวิธีการค้นหาเพื่อนบ้านใกล้สุด k ตัว ขั้นตอนวิธีของฟลอยด์-วอร์แชล ขั้นตอนวิธีของควิน-แม็กคลัสกีย์ ขั้นตอนวิธีฮังกาเรียน ขั้นตอนวิธี ขั้นตอนวิธีของชอร์ ขั้นตอนวิธีเชิงพันธุกรรม ขั้นตอนวิธีโบรน-เคอร์โบสท์ ขั้นตอนวิธีของไดก์สตรา

แหล่งที่มา

WikiPedia: ขั้นตอนวิธีการลบย้อนกลับ http://code.google.com/p/mst-algorithms/source/bro... http://en.vionto.com/show/me/Kruskal's+algorithm http://courses.cs.vt.edu/~cs5114/spring2009/lectur... //doi.org/10.1145%2F335305.335345 http://en.wikipedia.org/wiki/Bor%C5%AFvka's_algori... http://en.wikipedia.org/wiki/Dijkstra's_algorithm http://en.wikipedia.org/wiki/Kruskal's_algorithm http://en.wikipedia.org/wiki/Prim's_algorithm