PHP의 단일 세트에서 특정 크기의 모든 조합을 생성하는 방법
문자 배열과 원하는 조합 크기가 주어지면, 임무는 특정 크기의 가능한 모든 조합을 생성하는 것입니다. 이 기사에서는 반복 문자가 허용되지 않는 순열과 구별하여 PHP를 사용하여 이를 달성하는 알고리즘을 살펴봅니다.
알고리즘
알고리즘은 재귀를 기반으로 합니다. 자세한 설명은 다음과 같습니다.
구현 예
아래는 실제 예시입니다. PHP:
function sampling($chars, $size, $combinations = array()) { if (empty($combinations)) { $combinations = $chars; } if ($size == 1) { return $combinations; } $new_combinations = array(); foreach ($combinations as $combination) { foreach ($chars as $char) { $new_combinations[] = $combination . $char; } } return sampling($chars, $size - 1, $new_combinations); } // Example $chars = array('a', 'b', 'c'); $output = sampling($chars, 2); var_dump($output);
출력:
array(9) { [0]=> string(2) "aa" [1]=> string(2) "ab" [2]=> string(2) "ac" [3]=> string(2) "ba" [4]=> string(2) "bb" [5]=> string(2) "bc" [6]=> string(2) "ca" [7]=> string(2) "cb" [8]=> string(2) "cc" }
위 내용은 PHP의 단일 세트에서 특정 크기의 모든 조합을 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!