
No.3ベストアンサー
- 回答日時:
自分で書いて、不要なreturnが気になったんで、書き直し。
内容は同じです。
<?php
function combination($n, $i, $s) {
if($n == 0) {
echo $s.$i."<br />\n";
} else {
for($j = 0; $j < 10;$j++) {
combination($n - 1, $j, $s.$i);
}
}
}
function permutation($n, $a, $s) {
if($n == 0) {
echo "{$s}\n";
} else {
for($i = 0; $i < count($a); $i++) {
$p = array_splice($a, $i, 1);
permutation($n - 1, $a, $s.$p[0]);
array_splice($a, $i, 0, $p);
}
}
}
combination(3, "", "");
permutation(4, range(1,4), "");
?>
No.2
- 回答日時:
ご質問のソースだと、順列ではなく組み合わせになっているのでは・・・
<?php
function combination($n, $i, $s) {
if($n == 0) {
echo "{$s}{$i}<br />\n";
} else {
for($j = 0; $j < 10;$j++) {
combination($n - 1, $j, $s.$i);
}
}
}
function permutation($n, $a, $s) {
if($n == 0) {
echo "{$s}<br />\n";
return;
}
for($i = 0; $i < count($a); $i++) {
$p = array_splice($a, $i, 1);
permutation($n - 1, $a, $s.$p[0]);
array_splice($a, $i, 0, $p);
}
}
combination(3, "", "");
permutation(4, range(1,4),"");
?>
combinationは組み合わせ、permutationは順列を出します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウンメニューにDBの内容...
-
$_SESSIONに二次元配列を使える...
-
配列をループでたくさん宣言し...
-
pdfファイルの複数添付 引数の型
-
foreachのなかで次のキーを参照...
-
String だと「 ByRef引数の型が...
-
自動で番号を振りたい
-
Resource id #3 と表示されま...
-
CSVデータの行数カウントをした...
-
プルダウンメニューでCSVデータ...
-
csvの内容を行単位で削除したい
-
複数行のデータのPOST処理に関して
-
PHPで10連ガチャを作成したいの...
-
配列を回すとき、最後の要素だ...
-
C言語の配列をPush(追加)する...
-
PHP 多次元配列変数のデータ受...
-
読み(あ行~わ行)ごとに分け...
-
C言語でCSVファイルの行数を読...
-
配列を返す関数から、一つの要...
-
SQL文の実行結果を変数で受けて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プルダウンメニューにDBの内容...
-
空フィールドが表示されない
-
NGワード設定もしくはテキス...
-
PHPで ?seq= の後に続く数に応...
-
大切なPHP用語
-
HTTPのメッセージボディについ...
-
占いのPHPを作成中ですが・・・
-
XML_Serializerで複数のXMLの扱い
-
preg_replaceでの警告
-
多次元配列のカウント+1の仕方
-
二次元配列のソート方法がわか...
-
" "を省く方法を教えてください
-
phpとmysqlで「あいまい検索」...
-
PHP array関数の[ ]内の値の表示
-
usortで3つの項目を昇順・降順...
-
PEAR・MDB2のモジュールロード...
-
pg_insertで現在の時刻を挿入す...
-
functionを定義したつもりが、...
-
cakephp2.6でfindを使い合計値...
-
外部のテキストファイルを読み...
おすすめ情報