栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c++实现下三角矩阵的取值和存值

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c++实现下三角矩阵的取值和存值

33.假定按行的方式把对称矩阵的下三角区域储存在一个一维数组中。设计一个C++类lowerSymmetricMatrix,包含取值和存值方法。这两个方法的时间复杂度应为(1)

 #include 
 using namespace std;
  template 
  class lowerSymmetricMatrix{
  	public :
  		lowerSymmetricMatrix(int theRows = 0, int theColumns=0)
		  {
		  	this->theColumns=theColumns;
		  	this->theRows=theRows;
		  	element= new T [theRows*theColumns];
		  };
  		~lowerSymmetricMatrix(){ delete [] element;}
		void setelement(T a,int i=0,int j=0);
		T getelement(int i=0,int j=0);
		
	private:
		int theRows,theColumns;
		T *element;
  }; 
  template 
 T lowerSymmetricMatrix::getelement(int i,int j){
  	return this->element[i+j+(i*(i-1))/2];
  }
  template 
  	void lowerSymmetricMatrix::setelement(T a,int i,int j){
  		element[i+j+(i*(i-1))/2]=a;
	  }
  

在做这道题时有一个小问题,就是在类下面写方法的时候,不能完全复制。比如setelement(T a,int i=0,int j=0)就会报错,需要把初值删除。
报错如下

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/311563.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号