请教几个c++小问题,有分送 有追加

来源:百度知道 编辑:UC知道 时间:2024/06/29 22:18:43
计算稀疏矩阵中的最大值并返回其值和位置
计算稀疏矩阵中的最小值并返回其值和位置
计算稀疏矩阵主对角元素之和
对稀疏矩阵进行镜像操作(即左右翻转)
计算稀疏矩阵的平均值
计算稀疏矩阵中的最大值和最小值之差并返回其值

自行设计函数及传入、返回参数

我回答吧,有的啊去过呢,记得分哦有``

说思路吧,概念都忘了现去网上查的,稀疏矩阵就是0很多的矩阵.m行n列的矩阵中不为0的元素个数为N ,N<<m*n就是稀疏矩阵.我介绍一种稀疏矩阵的存法,采用三元组的方法,这里三元组的实现可以用二维数据,或链表
行号,列号,值
行号,列号,值
这种,方法存稀疏矩阵,只存不为0值的数据,
最大值和最小值好求了吧.只要比较值的列就OK了,如果值的列最大值大于0就取之,如果最大值小于0那最大值就是0,最小值同理.主对角线之和,判断行号列号在不在主对角线上,把在的加起来,其他的都是0就不用管了.这就是主对角线的和了,左右翻转,这个是不是就是把行换成列把列换成行那种翻转??
是的话,简单了.把行号和列号调个个就行了,原来的行号变成列号,原来的列号变成行号,调完后重新按行号排下序,行号一样的再按列号排下,OK了.平均值.所以的相加除m*n,最大最小值的差,根据上面的应该能求出来了吧.
只提供了思路,希望对你有帮助,我看楼上的说找不到,就提供了个思路供参考.

诶,测控的兄弟啊,我网上找了好久也没有找到啊