获取矩阵

时间:2016-12-11 19:02:32

标签: c matrix

[N][N] Matrix中,获取某个元素周围8个元素之和的最佳方法是什么?

我们一直在以粗暴的方式做这件事,只是检查了很多if语句,但我想知道是否有一种聪明的方式可以做到这一点。

我们面临的问题是矩阵的边界,因为我们找不到比原始if(i>0 && j>0){...}

更微妙的方式

1 个答案:

答案 0 :(得分:2)

假设矩阵已经初始化,并且您正在考虑计算那些存在所有八个对应元素的元素的总和。然后,如果通过执行以下操作仅为这些元素应用双for循环,则可以节省时间:

Let a N x N matrix then use the following to cover all the elements satisfying the above conditions


  for( i =  1; i < N - 1 ;i++)
    {
      for( j = 1;j < N -1 ;j++)
      {
        //YOUR CODE 
      }
    }