2016-04-05 6 views
0

Matlabにはn行k列の行列があります。そのようなベクトルが存在するならば、繰り返される要素のない長さkのベクトルを構築するために、各列から1つの要素を取る必要があります。私はこのベクトルを見つけるためにどうやって行くことができるかわからない。Matlabの行列の各列から1つの要素で構成されるユニークなベクトル

例1:行列X = [1,1,1; 2,2,1; 3,1,1]は、固有の要素v = [3,2,1]を持つベクトルを持ち、その中で3が選択される最初の列から2番目が2番目から選択され、1番目が3番目の列から選択されます。

例2:行列Y = [1,1,2; 1,1,3]には、このようなベクトルはありません。これは、最初の列の要素と2番目の列の要素を選択すると、私は確実に2つの1を持っています。したがって、私は私のベクトルにユニークな要素を持たないでしょう。

答えて

0

次のベクタに対して繰り返し実行する再帰関数を記述し、新しい要素が使用可能かどうかを調べることができます。戻り値がない場合は、次のベクタ(元の行列の一部として)に移動します。

再帰的なMatlab関数を書くための出発点として、以下を確認してください。Recursive Function in matlab

関連する問題