Das Bestimmen des Abschlusses für alle möglichen Teilmengen eines Arrays ist ein entscheidender Schritt im relationalen Datenbankdesign. Um sich nicht wiederholende Teilmengen in PHP zu finden, sollten Sie den folgenden Ansatz in Betracht ziehen:
function powerSet(array $array) : array { // add the empty set $results = [[]]; foreach ($array as $element) { foreach ($results as $combination) { $results[] = [...$combination, $element]; } } return $results; } $ATTRIBUTES = ['A', 'B', 'C', 'D']; $SUBSETS = powerSet($ATTRIBUTES);
Diese Funktion verwendet array_merge, um alle möglichen Teilmengen, einschließlich der leeren Menge, zu generieren. Das resultierende $SUBSETS-Array enthält alle sich nicht wiederholenden Teilmengen, die in der Frage angefordert werden:
[ [], ['A'], ['B'], ['A', 'B'], ['C'], ['A', 'C'], ['B', 'C'], ['A', 'B', 'C'], ['D'], ['A', 'D'], ['B', 'D'], ['A', 'B', 'D'], ['C', 'D'], ['A', 'C', 'D'], ['B', 'C', 'D'], ['A', 'B', 'C', 'D'] ]
Diese Methode bietet eine prägnante und effiziente Lösung zum Auffinden von Teilmengen eines Arrays in PHP und macht sie auf verschiedene Daten anwendbar Analyse- und Datenbankdesignaufgaben.
Das obige ist der detaillierte Inhalt vonWie kann ich alle Teilmengen eines Arrays in PHP effizient generieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!