Припустимо, графік з n вершинами представлений у вигляді потоку з m ребер, але через потік дозволено кілька проходів.
Моніка Раух Гензінгер, Прабхакар Рагаван і Шрідар Раджагопалан зауважили, що простір необхідний, щоб визначити, чи існує шлях між двома заданими вершинами в G , якщо через дані дозволено проходження k . (Див. Також версію технічного звіту .) Однак вони не містять алгоритму, щоб реально досягти цієї межі. Я припускаю, що оптимальний алгоритм насправді приймав би O ( ( n простір в реалістичній обчислювальній моделі, оскільки треба відрізняти n різних вершин, якщо не можна індексувати пам'ять, використовуючи покажчики постійного розміру.
Як можна вирішити підключення графа з проходами, використовуючи O простір?
Якщо дозволений лише один прохід, вхідні дані можуть зберігатися як розділ набору вершин, об'єднуючи множини, якщо між вершинами видно ребро у двох різних наборах. Цього явно потрібно максимум простір. Моє запитання щодо k > 1 : як можна використовувати більше проходів, щоб зменшити необхідний простір?
(Щоб уникнути тривіальності, - параметр, який не можна апріорі обмежувати постійною, а пробіли - це вирази, що включають функції n і k .)
Оновлення: навіть для було б дуже корисно мати спосіб зберігання лише n / 2 вершин. Або насправді є сильніша нижня межа c n для деякої постійної с , незалежно від k ?