Đây là lần đầu tiên tôi đọc về các thuật toán trì hoãn đa thức, vì vậy tôi không chắc chắn 100% câu trả lời của mình, nhưng tôi nghĩ một cái gì đó như sau sẽ hoạt động.
Chọn một số quy ước để biểu diễn các đường dẫn có tổng thứ tự tự nhiên được xác định trên đó. (Một ví dụ sẽ chỉ là liệt kê các đỉnh của đường dẫn và sắp xếp theo thứ tự từ vựng). Chọn cấu trúc dữ liệu tại chỗ yêu thích của bạn hỗ trợ tìm kiếm và chèn logarit (giả sử cây đỏ-đen). Đặt là biểu đồ của bạnD G<DG
Xác định thuật toán :F
F( s , t , G ,*D ) :
(ở đây có nghĩa là một tham chiếu đến cơ sở hạ tầng tại chỗ )D*DD
- chạy thuật toán đa thời gian của bạn để trả về một cặp đường dẫn tách rời với từ đến .P < Q s t( P, Q )P< QSt
Nếu không có trong .D( P, Q )D
2.1. Chèn vào (và đầu ra nếu bạn cho rằng xuất ra khi thuật toán chạy).D( P, Q )D
2.2. Với mỗi cạnh chạyu v ∈ E( P∪ Q )F( s , t , G - { u v } ,*D )
Ds , t ∈ V( G )s < ts ≠ tF( S , t , G , * D )
PSPMột CEPSPMột CE