Permutazioni con sottosequenze proibite


15

Lascia che denota l'insieme e C (n, k) denota l'insieme di tutte le combinazioni di elementi da senza ripetizioni. Sia una -tupla in . Diciamo che una permutazione dell'insieme evita se non vi è k-tupla di numeri interi tale che { 1 , . . . , n } k [ n ] p = p 1 p 2 . . . p k k C ( n , k ) π : [ n ] [ n ] [ n ] p i 1 < i 2 < . . . < i k π ([n]{1,...,n}k[n]p=p1p2...pkkC(n,k)π:[n][n][n]pi1<i2<...<ik

π(i1)=p1,π(i2)=p2,...,π(ik)=pk.

Ad esempio, se la permutazione evita come sottosequenza, mentre la permutazione no.12453 134 1 2 3 5 4n=51245313412354

Domanda: Sia una costante. Dato un insieme di -tuples, trovare una permutazione che evita ogni -tuple in . S C ( n , k ) k π : [ n ] [ n ] k SkSC(n,k)kπ:[n][n]KS

  1. Esiste un algoritmo per questo problema polinomiale ine ? Qui è dato in unario. Un algoritmo in esecuzione nel tempo andrebbe bene.|P|nnnf(K)|P|g(K)
  2. O questo problema è NP-completo?

Eventuali riferimenti per questo problema o suggerimenti di algoritmi sono i benvenuti. Si noti che la nozione di permutazione che evita la sottosequenza definita sopra non è la stessa nozione di permutazione che evita il modello in cui è importante solo l'ordine relativo degli elementi e che sembra essere ben studiato in combinatoria.


Intendi prendere una permutazione a caso e verificare se non viola alcun vincolo in S? Un algoritmo di tempo polinomiale randomizzato sarebbe meglio di niente. si presume che k sia una costante, quindi per definizione è piccola. Ma non vedo come funzionerebbe in modo efficiente se S avesse molti vincoli. Poiché dalla risposta di David, il problema è NPC per k = 3, sono un po 'scettico sul fatto che un algoritmo randomizzato sarebbe efficiente. Potresti per favore spiegare un po 'la tua idea?
Mateus de Oliveira Oliveira,

Mi dispiace, ho trascurato che hai una serie di tuple proibite. Non è garantito che il campionamento del rifiuto sia efficiente.
DW,

Risposte:


13

È NP-completo per con una riduzione dalla distanza . Nel problema di mezzo, uno riceve n oggetti da ordinare totalmente e vincoli su alcune triple di oggetti costringendo un oggetto del triplo ad essere tra gli altri due. Nel tuo problema, lo stesso vincolo può essere forzato vietando tutte le sottosequenze su tre elementi che non posizionano l'elemento centrale nel mezzo. Ma la via di mezzo è nota per essere NP-completa: vedi J. Opatrny, Problema di ordinazione totale, SIAM J. Comput. , 8 (1979), pagg. 111-114.K=3n

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.