タグ

ブックマーク / freefielder.jp (1)

  • 異なるn個から異なるm個を選び出す場合の、全てのパターンを得たい。

    と、これくらいなら手作業でも出来るし、プログラミングする場合でも、安直にforループを3つネストさせれば出来る。 でも「20個から異なる4個を選んだときの組み合わせを全て書き出せ」なんて言われたら、手作業では煩わしい。20C4 = 4845 通りの組み合わせになりますからな。安直にforループを20個ネストさせれば出来るけれど、それでは汎用性が皆無。 で、こんな関数を作ってみたのですが、どうか。とりあえず PHP5 で書いてみた。単純な再帰アルゴリズムなので、すぐ別の言語にも書き換えられますね。 <?php function getCpattern( $source, $m ){ /* 引数 $source:選択元要素の配列 */ /* 引数 $m:$source から異なる $m 個を選ぶ */ $n = sizeof($source); return ptn( $source, $n,

    異なるn個から異なるm個を選び出す場合の、全てのパターンを得たい。
  • 1