Nhờ định lý cắt cực tiểu dòng cực đại, chúng ta biết rằng chúng ta có thể sử dụng bất kỳ thuật toán nào để tính toán lưu lượng tối đa trong biểu đồ mạng để tính toán cắt . Do đó, độ phức tạp của việc tính toán một đường cắt tối thiểu không nhiều hơn độ phức tạp của việc tính toán một luồng tối đa .( s , t ) ( s , t )
Nó có thể ít hơn? Có thể có một thuật toán để tính toán một phần cắt tối thiểu nhanh hơn bất kỳ thuật toán dòng chảy tối đa nào không?
Tôi cố gắng tìm kiếm một giảm để giảm ) vấn đề -Max-dòng chảy đến vấn đề -min cắt, nhưng tôi đã không thể tìm thấy một. Suy nghĩ đầu tiên của tôi là sử dụng thuật toán chia và chinh phục: đầu tiên tìm một phép cắt nhỏ, tách đồ thị thành hai phần; bây giờ đệ quy tìm một luồng cực đại cho phần bên trái và luồng cực đại cho phần bên phải và kết hợp chúng với tất cả các cạnh cắt ngang. Điều này thực sự sẽ hoạt động để tạo ra một luồng tối đa, nhưng thời gian chạy trong trường hợp xấu nhất của nó có thể lớn gấp gấp nhiều lần thời gian chạy của thuật toán cắt nhỏ. Có giảm bớt tốt hơn?( s , t ) O ( | V | )
Tôi nhận ra định lý cắt tối đa dòng chảy tối đa cho thấy rằng độ phức tạp của việc tính toán giá trị của luồng cực đại cũng giống như độ phức tạp của tính toán công suất của phép cắt tối thiểu, nhưng đó không phải là điều tôi đang hỏi. Tôi đang hỏi về vấn đề tìm dòng chảy tối đa và tìm cách cắt tối thiểu (rõ ràng).
Điều này liên quan rất chặt chẽ với Tính toán lưu lượng tối đa từ mức cắt tối thiểu , ngoại trừ: (1) Tôi sẵn sàng cho phép giảm Cook (giảm Turing), không chỉ giảm Karp (giảm nhiều một) và (2) có lẽ với chúng ta có thể tìm thấy một số đồ thị sao cho phép cắt tối thiểu của giúp dễ dàng tính toán luồng cực đại của , một thứ nằm ngoài phạm vi của câu hỏi khác.G ' G ' G