Revision: 32994
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at October 5, 2010 06:58 by nextu
Initial Code
function pc_array_power_set($array) {
// initialize by adding the empty set
$results = array(array( ));
foreach ($array as $element)
foreach ($results as $combination)
array_push($results, array_merge(array($element), $combination));
return $results;
}
This returns an array of arrays holding every combination of elements, including the empty set. For example:
$set = array('A', 'B', 'C');
$power_set = pc_array_power_set($set);
$power_set contains eight arrays:
array( );
array('A');
array('B');
array('C');
array('A', 'B');
array('A', 'C');
array('B', 'C');
array('A', 'B', 'C');
Initial URL
Initial Description
Initial Title
Finding All Element Combinations of an Array
Initial Tags
array
Initial Language
PHP