ホームページ > バックエンド開発 > PHPチュートリアル > 配列要素のすべての組み合わせに対するアルゴリズムについてヘルプを求める

配列要素のすべての組み合わせに対するアルゴリズムについてヘルプを求める

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-23 14:24:05
オリジナル
1424 人が閲覧しました

アルゴリズムについては専門家に助けを求めてください

配列があります:
$arr=array(A,B,C);
必要な出力:
A
AB
AC
ABC
B
BA
BC
C
CA
CB

配列要素のすべての組み合わせを出力します。順序は必要ありません。すべて入力できます。


議論への返信 (解決策)

上記は、ACB、BAC、BCA、CAB も出力します。 、CBA

また、それは
配列 ([0] => A [1] => AB [2] => AC [3] => ABC [4] => ACB [5] => B [6] => BAC [9] => C [12] => [13] => CBA [14] => CAB )

ディルカジはまたここにいますか?ハイライトセクションをチェックしてください

$ar = array('A', 'B', 'C');$res = array_chunk($ar, 1);for($i=1; $i<count($ar); $i++) {  foreach($res as $r) {    if(count($r) != $i) continue;    foreach($ar as $v) {      if(! in_array($v, $r)) $res[] = array_merge($r, array($v));    }  }}//print_r($res);foreach($res as &$r) $r = join('', $r);print_r($res);
ログイン後にコピー
Array
(
[0] => A
[1] => B
[2] => C
[3] => AB
[4] => AC
[5] => BA
[7] => CA
[9] => ACB
[ 11 ] => BAC
[12] => CAB
[14] => CBA
)


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート