2012-02-20 5 views
3
  1. 別のマトリックスの行/ COL順列はnその要素セットS. 問題に属するAとBの行列:Bを与えるように置換さの行と列をできますか? この問題を解決するアルゴリズムの複雑さは何ですか? 決定子は部分的に助けます(m = nの場合)。必要な条件はdet(A)= +/- det(B)です。複雑さの:つのマトリックスは、二つのm Xを考える

  2. はまた、Sは

がこれはAの要素の順列許可有限である場合、

  • また、Bのいずれかの要素と一致し、「ドントケア」を含有することができます宿題ではなく、解決された17x17のパズルに関連しています。

  • +0

    を与えるために並べ替えされ、その行と列は、この宿題ですができますか? –

    答えて

    0

    は、行列の行と列を入れ替えの例を下に見る

    enter image description here

    開始マトリックスと端行列を観察します。行または列のすべての要素は、順序が変更されただけで保持されます。また、相対的な位置の変化は、行と列にわたって均一です。

    例:開始行列と終了行列の1を参照してください。その行には要素12,3、および14があります。また、その列には5,9,2があります。これは変換全体にわたって維持されます。私は与えられた行列Aのために見つけるために、前方に、この基本的なアルゴを入れています。この事実に基づいて

    は、行列Bに

    1. For each row in A, sort all elements in the row. Do same for B. 
    2. Sort all rows of A (and B) based on its columns. ie. if row1 is {5,7,16,18} and row2 is {2,4,13,15}, then put row2 above row1 
    3. Compare resultant matrix A' and B'. 
    4. If both equal, then do (1) and (2) but for columns on ORIGINAL matrix A & B instead of rows. 
    5. Now compare resultant matrix A'' and B'' 
    
    +0

    行を孤立してソートすることはできません。それ以外の場合は{{1,2}、{3,4}}は{{1,2}、{4,3}}と等しくなります。 – Lew

    +0

    行列を表現するために配列を使用している場合、適切なソートを行うのは簡単です。行{{1,2}、{3,4}}をソートした後は、{{1,2}、{4,3}}と同等になりますが、ソートされた列を比較している間にそれらの違いが後で捕捉されることに同意します。ロジックを乾かしてチェックすることができます。 –

    +0

    ポイント#4では、列の並べ替えがORIGINAL行列AおよびBで行われることに注意してください。並べ替えられた行はその後処理されません。 –

    関連する問題