Этот вопрос мотивирован этим постом, Можете ли вы определить сумму двух перестановок за полиномиальное время? и мой интерес к вычислительным свойствам перестановок.
Разностная последовательность перестановки чисел формируется путем нахождения разности между каждыми двумя соседними числами в перестановке . Другими словами,1 , 2 , … n + 1 π a i = | π ( i + 1 ) - π ( i ) | 1 ≤ i ≤ nза
Например, последовательность является последовательностью разностей перестановок . При этом последовательности и не являются последовательностями различий любой перестановки чисел .2 3 4 1 2 , 2 , 3 3 , 1 , 2 1 , 2 , 3 , 4
Существует ли эффективный алгоритм для определения, является ли данная последовательность разностной последовательностью для некоторой перестановки , или это NP-сложный?
РЕДАКТИРОВАТЬ : Мы получим вычислительно эквивалентную задачу, если мы сформулируем задачу с использованием круговых перестановок.
РЕДАКТИРОВАТЬ 2 : Крест размещен на MathOverflow, Насколько сложно реконструировать перестановку из ее последовательности различий?
РЕДАКТИРОВАТЬ3 Присудить награду за эскиз доказательства, и я приму ответ после получения полного формального доказательства.
РЕДАКТИРОВАТЬ 4 : хорошее доказательство полноты Марцио было опубликовано в электронном журнале комбинаторики .
источник
Ответы:
Это эскиз возможного сокращения, чтобы доказать, что это NP-сложный:
Отверстия должны быть заполнены в остальной части перестановки.
3) используя достаточно большой 1SEQ, за которым следует 1SEQ с некоторыми дырками, а затем еще один большой 1SEQ, вы можете построить принудительную линию ;
4) объединяя множество принудительных линий, вы можете построить график сетки перестановок, в котором узлы соответствуют отсутствующим числам в базовой принудительной перестановке.
Например, последовательность 1111111112111111111112111111111 вызывает следующий график сетки перестановок 5x7:
7) Вы можете заполнить все дыры (т.е. завершить перестановку) тогда и только тогда, когда исходный граф сетки имеет гамильтонов цикл
РЕДАКТИРОВАТЬ: 27 июля 2013
Я попытался формально доказать NP-полноту проблемы: я ввел новую проблему (проблема Crazy Frog ) - NPC. Задача «Перестановочная перестройка из различий» эквивалентна «1-D задаче« Безумная лягушка »без заблокированных ячеек» (которая также является NPC).
Для получения подробной информации о сокращении см. Мой вопрос / ответ по теме «Два варианта гамильтоновых путей» или загрузите черновик доказательства «Когда лягушка встречает перестановку» :)) (я все еще проверяю / дополняю его)
источник