Heim >Backend-Entwicklung >PHP-Tutorial >Beispiel einer PHP-Methode zur Ausgabe der Anordnung oder Kombination mehrerer Elemente
Permutation und Kombination sind die grundlegendsten Konzepte der Kombinatorik. Unter der sogenannten Anordnung versteht man das Sortieren einer vorgegebenen Anzahl an Elementen aus einer vorgegebenen Anzahl an Elementen. Unter Kombination versteht man das Herausnehmen nur einer bestimmten Anzahl von Elementen aus einer bestimmten Anzahl von Elementen, unabhängig von der Sortierung. Das zentrale Problem von Permutationen und Kombinationen besteht darin, die Gesamtzahl möglicher Situationen für Permutationen und Kombinationen gegebener Anforderungen zu untersuchen. Permutation und Kombination stehen in engem Zusammenhang mit der klassischen Wahrscheinlichkeitstheorie.
In diesem Artikel wird hauptsächlich beschrieben, wie die Anordnung oder Kombination mehrerer Elemente in PHP ausgegeben wird. Der Beispielcode lautet wie folgt
<?php $arr = array('a','b','c','d'); $result = array(); $t = getCombinationToString($arr, 1); print_r($t); $t = getCombinationToString($arr, 2); $t2 = getunique($t); print_r($t2); $t = getCombinationToString($arr, 3); $t2 = getunique($t); print_r($t2); $t = getCombinationToString($arr, 4); $t2 = getunique($t); print_r($t2); function getunique($t){ $t2 = array(); //print_r($t); for($i=0;$i<count($t);$i++){ $count_list = array_count_values($t[$i]); $flag = 1; foreach($count_list as $ck=>$cv){ if($cv>1){ $flag = 0; break; } } if($flag){ sort($t[$i]); $flag2 = 1; if($t2){ foreach($t2 as $t2k=>$t2v){ if($t[$i]==$t2v){ $flag2 = 0; break; } } } if($flag2){ $t2[] = $t[$i]; } } } return $t2; } function getCombinationToString($arr, $m) { if ($m ==1) { return $arr; } $result = array(); $tmpArr = $arr; unset($tmpArr[0]); for($i=0;$i<count($arr);$i++) { $s = $arr[$i]; $ret = getCombinationToString(array_values($tmpArr), ($m-1), $result); foreach($ret as $row) { //$result[] = $s . $row; $temp = array(); $temp[] = $s; if(is_array($row)){ $temp = array_merge($temp,$row); }else{ $temp[] = $row; } sort($temp); $result[] = $temp; } } return $result; } ?>
Das obige ist der detaillierte Inhalt vonBeispiel einer PHP-Methode zur Ausgabe der Anordnung oder Kombination mehrerer Elemente. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!