Vergleiche von n Elementen k werden als Verbindungen bezeichnet, die aus n Elementen gebildet werden können, die in jeder Verbindung k der Elemente gesammelt werden, und die Verbindungen unterscheiden sich nur durch die Elemente selbst (der Unterschied an ihrer Stelle wird nicht berücksichtigt).
Beispielsweise der 3 Elemente (a,b,c) (a,b,c) können folgende Kombinationen gebildet werden: a,ac,bc.
Die Anzahl der möglichen Kombinationen, die aus n Elementen k gebildet werden können, ist symbolisiert
und wie folgt berechnet:
Es gibt zwei Möglichkeiten, die Anzahl der Kombinationen zu finden.
ANHANG Wir finden n, k, n-k, und wir werden die Zahl auf der Oberseite der Formel zählen, aber wir können diese Methode zur möglichen Überfüllung bei n-P=12 verwenden.
2. Durch dynamische Programmierung.
Die PD wird wie ein Pascal-Dreieck aussehen, oben und an den Rändern gibt es Einheiten und jede Zahl entspricht der Summe der beiden Chips darüber.
Funktionswert von Kombinationen mit dynamischer Programmierung für O(n ^2):
HTML generiert mit Hilite. ich
in C(in n, in (k)
{~}
Vektor-BroadcastinVerbal dp(n + 1, VektorinGrad(n + 1, 1) / dp Größe erstellen (n + 1, n + 1)für (seufzt)in i = 0; i É= n; i++++ / Füllen Sie die i-y Linie der Masse{~}
für (seufzt)in j = 1; j Kanal i; j+++)
{~}
dp[i][j] = dp[i - 1][j - 1] + dp[i - 1][j] (i - 1; j - 1) und (i - 1; j) ♪
♪
zurück dp[n][k]; / Über uns ♪