การปิดสกรรมกริยาออนไลน์ดีกว่า O (N ^ 2) ต่อการเพิ่มขอบ


15

ฉันกำลังมองหาอัลกอริทึมออนไลน์เพื่อรักษาการปิด transitive ของกราฟ acyclic กำกับด้วยความซับซ้อนเวลาน้อยกว่า O (N ^ 2) ต่อการเพิ่มขอบ อัลกอริทึมปัจจุบันของฉันเป็นเช่นนี้:

For every new edge u->v connect all nodes in Pred(u) \cup { u } with all nodes in Succ(v) \ \cup { v }.

สำหรับ O (n ^ 2) ขอบแปลนี้ในเวลาซับซ้อนรวมของ O (n ^ 4) ซึ่งมากยิ่งกว่าตัวอย่างเช่นฟลอยด์-Warshall

คำตอบ:


15

O (n) เวลาต่อการเพิ่มขอบ:


2
ดูเพิ่มเติม: DM Yellin เพิ่มความเร็วในการปิด transitive แบบไดนามิกสำหรับกราฟองศาที่ล้อมรอบ Acta Informatica, 30: 369–384, 1993
Jeffε

1
กระดาษแผ่นแรกให้การดำเนินการที่สำคัญสองอย่างจากการปิด transitive แต่ฉันต้องการหนึ่งในสาม: วนซ้ำผ่านโหนดที่เข้าถึงได้ทั้งหมด แม้ว่ากระดาษแผ่นที่สองนั้นดี
Alexandru
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.