JAVA MATRIX DETERMINANT
public static double determinant(double[][] input) {
int rows = nRows(input);
//number of rows in the matrix
int columns = nColumns(input); //number of columns in the matrix
double determinant = 0;
if ((rows== 1) && (columns == 1)) return input[0][0];
int sign = 1;
for (int column = 0; column < columns; column++) {
double[][] submatrix = getSubmatrix(input, rows, columns,column);
determinant = determinant + sign*input[0]
[column]*determinant(submatrix);
sign*=-1;
}
return determinant;
}