2

私はそのような非数値論理対称行列を持っています

0   0   0   0   0   0   1   1   1   1
0   0   0   0   0   1   0   1   1   1
0   0   0   0   0   1   1   0   1   1
0   0   0   0   0   1   1   0   0   1
0   0   0   0   0   1   1   1   1   0
0   1   1   1   1   0   0   0   0   0
1   0   1   1   1   0   0   0   0   0
1   1   0   0   1   0   0   0   0   0
1   1   1   0   1   0   0   0   0   0
1   1   1   1   0   0   0   0   0   0 

値 == 1 のすべてのディメンション (行と列) を取得したい

結果 = (0,6)、(0,7)、(0,8)、(0,9) (1,5)、(1,7)、(1,8)、(1,9) (2 ,5), (2,6), (2,8), (1,9) (3,5), (3,6), (3,9) (4,5), (4,6), (4,7), (4,8)

C# の ilnumerics ライブラリでこれを行うより迅速な方法はありますか?

編集:これが私の解決策です

    ILNumerics.ILLogical matrixThreshold;
    ..... Some C# code
    for (int i = 0; i < matrixThreshold.Length; i++)
        for (int j = i + 1; j < matrixThreshold.Length; j++)
            if (matrixThreshold.GetValue(i, j) == 1) Console.Write("({0},{1}){2}", i, j, Environment.NewLine);
4

2 に答える 2

-1
   for(int i=0;i<num1;i++)
   {
    for j=0;j<num2;j++)
    {
     if(a[i][j])
        print("("+i+","+j+")");
      }
   }
于 2013-10-01T09:16:51.413 に答える