"稀疏矩阵操作实验报告:重载等号运算符测试结果与数据结构与算法描述"

需积分: 0 0 下载量 8 浏览量 更新于2023-12-26 收藏 54KB DOCX 举报
201700140056_李港_实验五1;//重载等号运算符测试结果(测试输入,测试输出)1.课堂检查:2.平台提交题目1简单数据:通过题目2复杂数据:通过 分析与探讨(结果分析,若存在问题,探讨解决;山东大学 计算机科学与技术 学院 数据结构与算法 课程实验报告学号:201700140056姓名:李港班级:跟 18.2(17.4)实验题目:实验五 数组和矩阵实验学时:2h实验日期:2019.10.18实验目的:掌握稀疏矩阵结构的描述及加、乘等操作的实现。软件开发工具:Virtual Studio 20191. 实验内容1、创建稀疏矩阵类,采用行主顺序把稀疏矩阵非 0 元素映射到一维数组中,提供操作: 两个稀疏矩阵相加、两个稀疏矩阵相乘、输出矩阵(以通常的阵列形式输出)。2、键盘输入矩阵的行数、列数;按行输入矩阵的各元素值,建立矩阵;3、对建立的矩阵执行相加、相乘的操作,输出操作的结果矩阵。2. 数据结构与算法描述(整体思路描述,所需要的数据结构与算法)总体思路:1. 实现默认构造、复制构造、析构功能。2. “稀疏”的实现:采用三元组表示方式。3. 加法:采用迭代器,大体思路类似链表合并,先同时对两个加数矩阵的数组循环进行大小判断并赋值给*this;再将剩余非空链表的内容复制到*this 中。4. 乘法:使用迭代器。首先准备左右矩阵; 在这个实验中,学生李港通过对稀疏矩阵结构的描述及加、乘等操作的实现,掌握了数组和矩阵实验的相关知识。通过使用Virtual Studio 2019等软件开发工具,实验内容包括创建稀疏矩阵类,采用行主顺序把稀疏矩阵非0元素映射到一维数组中,并提供了对两个稀疏矩阵进行相加、相乘以及输出矩阵的操作。通过键盘输入矩阵的行数、列数,并按行输入矩阵的各元素值,建立了矩阵,并对建立的矩阵执行相加、相乘的操作,输出了操作的结果矩阵。 在实验中,学生的整体思路包括实现默认构造、复制构造、析构功能,采用三元组表示方式实现稀疏矩阵,在加法方面采用了迭代器的方式,类似链表合并的大体思路,通过对两个加数矩阵的数组循环进行大小判断并赋值,然后将剩余非空链表的内容复制到结果矩阵中。而在乘法方面,同样使用了迭代器,首先准备左右矩阵,进而实现了矩阵的乘法操作。 在课堂检查和平台提交题目的测试中,学生通过了简单数据和复杂数据的测试,结果为通过。通过本次实验,学生对稀疏矩阵及相关操作有了更加深入的了解,并且通过软件开发工具的实际操作,增强了对数据结构与算法的理解和掌握。在实验报告中,学生对实验的目的、内容、数据结构与算法描述等进行了详细的阐述和总结,表明了对实验内容的深刻理解和掌握。通过本次实验的学习,学生对稀疏矩阵的描述及加、乘等操作的实现有了更加扎实的掌握,为以后的学习和实践打下了坚实的基础。