欢迎来到天天文库
浏览记录
ID:48870759
大小:421.50 KB
页数:19页
时间:2020-02-03
《实验5 特殊矩阵地存储和运算.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实用文档实验报告五特殊矩阵和广义表的存储和运算班级:姓名:学号:专业:一、实验目的:1、了解多维数组的存储方式和存取特点2、熟悉稀疏矩阵的存储方式3、用三元组法实现稀疏矩阵的相、减、转置算法。二、实验内容:1、在矩阵类Matrix中,增加下列操作:1)判断一个矩阵是否为上(下)三角矩阵、对称矩阵。2)判断两个矩阵是否相等。3)计算两个矩阵的乘积。算法原代码:publicclassMatrix{privateint[][]matrix;privateintrow;privateintcolumn;p
2、ublicMatrix(int[][]matrix){row=matrix.length;column=matrix[0].length;this.matrix=newint[row][column];for(inti=0;i3、column=column;matrix=newint[row][column];}/***判断上三角*@parammatrix*@return*/publicstaticbooleanisUpTri(Matrixmatrix){if(matrix.column!=matrix.row){实用文档thrownewIllegalArgumentException("矩阵的行列不相等");}for(inti=0;i4、getColumn();j++){if(0==matrix.getElement(i,j)){returnfalse;}}}returntrue;}/***判断下三角*@parammatrix*@return*/publicstaticbooleanisDownTri(Matrixmatrix){//先判断行列相不相等if(matrix.column!=matrix.row){thrownewIllegalArgumentException("矩阵的行列不相等");}for(intj=0;j5、trix.getColumn();j++){for(inti=j+1;i6、j7、)8、9、matrix1.getColumn()!=matrix2.getColumn()){returnfalse;}for(inti=0;i10、multiply(MatrixTemPMatrix){if(column!=TemPMatrix.row){thrownewIllegalArgumentException("行列不匹配,两个矩阵无法相乘");}Matrixmatrix1=newMatrix(row,TemPMatrix.column实用文档);for(inti=0;i
3、column=column;matrix=newint[row][column];}/***判断上三角*@parammatrix*@return*/publicstaticbooleanisUpTri(Matrixmatrix){if(matrix.column!=matrix.row){实用文档thrownewIllegalArgumentException("矩阵的行列不相等");}for(inti=0;i4、getColumn();j++){if(0==matrix.getElement(i,j)){returnfalse;}}}returntrue;}/***判断下三角*@parammatrix*@return*/publicstaticbooleanisDownTri(Matrixmatrix){//先判断行列相不相等if(matrix.column!=matrix.row){thrownewIllegalArgumentException("矩阵的行列不相等");}for(intj=0;j5、trix.getColumn();j++){for(inti=j+1;i6、j7、)8、9、matrix1.getColumn()!=matrix2.getColumn()){returnfalse;}for(inti=0;i10、multiply(MatrixTemPMatrix){if(column!=TemPMatrix.row){thrownewIllegalArgumentException("行列不匹配,两个矩阵无法相乘");}Matrixmatrix1=newMatrix(row,TemPMatrix.column实用文档);for(inti=0;i
4、getColumn();j++){if(0==matrix.getElement(i,j)){returnfalse;}}}returntrue;}/***判断下三角*@parammatrix*@return*/publicstaticbooleanisDownTri(Matrixmatrix){//先判断行列相不相等if(matrix.column!=matrix.row){thrownewIllegalArgumentException("矩阵的行列不相等");}for(intj=0;j5、trix.getColumn();j++){for(inti=j+1;i6、j7、)8、9、matrix1.getColumn()!=matrix2.getColumn()){returnfalse;}for(inti=0;i10、multiply(MatrixTemPMatrix){if(column!=TemPMatrix.row){thrownewIllegalArgumentException("行列不匹配,两个矩阵无法相乘");}Matrixmatrix1=newMatrix(row,TemPMatrix.column实用文档);for(inti=0;i
5、trix.getColumn();j++){for(inti=j+1;i6、j7、)8、9、matrix1.getColumn()!=matrix2.getColumn()){returnfalse;}for(inti=0;i10、multiply(MatrixTemPMatrix){if(column!=TemPMatrix.row){thrownewIllegalArgumentException("行列不匹配,两个矩阵无法相乘");}Matrixmatrix1=newMatrix(row,TemPMatrix.column实用文档);for(inti=0;i
6、j7、)8、9、matrix1.getColumn()!=matrix2.getColumn()){returnfalse;}for(inti=0;i10、multiply(MatrixTemPMatrix){if(column!=TemPMatrix.row){thrownewIllegalArgumentException("行列不匹配,两个矩阵无法相乘");}Matrixmatrix1=newMatrix(row,TemPMatrix.column实用文档);for(inti=0;i
7、)
8、
9、matrix1.getColumn()!=matrix2.getColumn()){returnfalse;}for(inti=0;i10、multiply(MatrixTemPMatrix){if(column!=TemPMatrix.row){thrownewIllegalArgumentException("行列不匹配,两个矩阵无法相乘");}Matrixmatrix1=newMatrix(row,TemPMatrix.column实用文档);for(inti=0;i
10、multiply(MatrixTemPMatrix){if(column!=TemPMatrix.row){thrownewIllegalArgumentException("行列不匹配,两个矩阵无法相乘");}Matrixmatrix1=newMatrix(row,TemPMatrix.column实用文档);for(inti=0;i
此文档下载收益归作者所有