Subset-Summenproblem: Gegeben eine Reihe von Zahlen S
und eine Zielnummer, sagen wir 0
. Ziel ist es, eine Untermenge S’
von S
so zu finden, dass sich die darin enthaltenen Elemente zu 0
addieren. Ich habe gehört, dass dieses Problem polynomial wird, wenn die Größe S’
gegeben ist.
Zum Beispiel, wenn Sie einen Hinweis haben, dass 3
Elemente summieren sich zu 0
können wir Komplexität O(n^3)
kommen.Woher wissen Sie, ob k für O (n^k) in der Subsetsumme konstant ist?
Die Klasse P besteht aus solchen Problemen, die in polynomieller Zeit lösbar sind. Zum Beispiel könnten sie in O(n^k)
für einige Konstante k
gelöst werden, wobei n
die Größe des Eingangs ist. (n^k)
bezeichnet die Anzahl von Teilmengen der Größe k
von [n]
; oder, äquivalent, die Anzahl der Arten, in denen wir k
verschiedene Elemente aus einem n
-Element auswählen können. Mit n
Elementen; Eine k
-Untergruppe einer Menge ist eine Teilmenge mit k
Elementen. Geben Sie also an, dass es einen Algorithmus in Polynomialzeit gibt, der k
-subset findet, oder die -subset, die zu 0
von n
Elemente. Ich meine, wenn k
eine Eingabe des Algorithmus ist, so dass k
auch größer als 3
sein kann. Können wir sagen, k
ist konstant oder was?
nicht sicher, verstehe ich vollständig, aber ja in dem, was Sie erklären, k ist eine unbekannte Konstante – Whitefret
Alles hängt davon ab, ob Sie | S '| Teil des * Inputs * für das Problem sein - das heißt, wenn es erlaubt ist, über Probleminstanzen hinweg zu variieren.Wenn es nicht erlaubt ist, zu variieren, dann haben Sie tatsächlich ein eindeutiges Problem pro Wert von | S '|, von denen jedes in Polynomialzeit lösbar ist *. Dies ist eine gültige, nicht oft keine * nützliche * Aussage zu machen. –
Mögliches Duplikat von [Was bedeutet es, dass k in O (n^k) konstant ist?] (Http://stackoverflow.com/questions/36748910/what-does-it-mean-for-k-to- be-konstant-in-onk) –