博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构——稀疏矩阵的转置算法
阅读量:4958 次
发布时间:2019-06-12

本文共 750 字,大约阅读时间需要 2 分钟。

本篇文章的代码基于【数据结构】【严蔚敏】【清华大学】

不是很想分函数来一遍解释

信息基本上都在注解里
直接上完整代码好了

#include 
#include
#define MAXSIZE 100 // 非零元个数的最大值typedef int ElemType; typedef int Status; #define OK 1#define N 4struct Triple {
int i,j; // 行下标,列下标 ElemType e; // 非零元素值};struct TSMatrix {
Triple data[MAXSIZE+1]; // 非零元三元组表,data[0]未用 int mu,nu,tu; // 矩阵的行数、列数和非零元个数}; // 带行连接信息的三元组表 typedef struct{
Triple data[MAXSIZE+1]; // 非零元三元组表,data[0]未用 int rpos[MAXSIZE+1]; // 各行的第一个非零元的位置表 int mu,nu,tu; // 矩阵的行数、列数和非零元个数}RLSMatrix;Status TransposeSMatrix(TSMatrix M,TSMatrix &T){
// 求稀疏矩阵M的转置矩阵T。算法5.1 // 时间复杂度为O(nu*tu) // 当tu和mu*nu同一个数量级时,时间复杂度会变为O(mu*nu^2) // 因此适用于tu<

转载于:https://www.cnblogs.com/vivid-victory/p/10090460.html

你可能感兴趣的文章