vnl_determinant.cxx

来自「DTMK软件开发包,此为开源软件,是一款很好的医学图像开发资源.」· CXX 代码 · 共 23 行

CXX
23
字号
#include "vnl_determinant.h"
#include <vcl_cassert.h>

int vnl_determinant(vnl_matrix<int> const &M, bool balance )
{
  unsigned n = M.rows();
  assert(M.cols() == n);

  switch (n)
  {
   case 1: return M[0][0];
   case 2: return vnl_determinant(M[0], M[1]);
   case 3: return vnl_determinant(M[0], M[1], M[2]);
   case 4: return vnl_determinant(M[0], M[1], M[2], M[3]);
   default:
    vnl_matrix<double> m(n,n);
    for (unsigned int i=0; i<n; ++i)
      for (unsigned int j=0; j<n; ++j)
        m(i,j)=double(M(i,j));
    return int(0.5+vnl_determinant(m, balance)); // round to nearest integer
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?