4.24 Alle Elementkombinationen eines Arrays finden
Problem
Sie möchten alle Mengenkombinationen herausfinden, die einige oder alle Elemente eines Arrays enthalten; dies wird auch als Potenzmenge bezeichnet.
Lösung
Verwenden Sie die in Listing 4.5 dargestellte Funktion pc_array_power_set()
.
function pc_array_power_set($array) { // Initialisieren durch Hinzufügen einer leeren Menge $results = array(array()); foreach ($array as $element) foreach ($results as $combination) array_push($results, array_merge(array($element), $combination)); return $results; }
Listing 4.5 pc_array_power_set()
Diese Funktion gibt ein Array aus Arrays zurück, das jede Kombination von Elementen einschließlich der leeren Menge enthält. Ein Beispiel:
$menge = array('A', 'B', 'C'); ...
Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.