对稀疏矩阵进行压缩存储方法一般有两种 分别为三元组顺序表和十字链表

大学网课 已帮助 人

对稀疏矩阵进行压缩存储方法一般有两种,分别为三元组顺序表和十字链表

对稀疏矩阵进行压缩存储方法一般有两种 分别为三元组顺序表和十字链表

热搜:arm体系结构可用两种方法存储字数据

回答

共1条回复

  • (1)传统转置算法
    Status TransposeSMatrix(TSMatrix M,TSMatrxi &T){
    T.mu=M.nu;T.nu=M.mu;T.tu=M.tu;
    if (T.tu){
    q=1;
    for (col=1;col<=M.nu;col++)
    for (p=1;p<=M.tu;p++)
    if (M.data[p].j==col){
    T.data[q].i=M.data[p].j;
    T.data[q].j=M.data[p].i;
    T.data[q].e=M.data[p].e;
    ++q;
    }
    }
    return OK;
    }// TransposeSMatrix
    (2)快速转置算法
    Status FastTransposeSMatrix( TSMatix M,TSMatrix &T){
    T.mu=M.nu;T.nu=M.mu;T.tu=M.tu;
    if (T.tu){
    for (col=1;col<=M.nu;col++) num[col]=0;
    for (t=1;t<=M.tu;t++) ++num[M.data[t].j];
    cpot[1]=1;
    for (col=2;col<=M.nu;col++) copt[col]=cpot[col-1]+num[col-1];
    for (p=1;p<=M.tu;p++){
    col=M.data[p].j;
    q=cpot[col];
    T.data[q].i=M.data[p].j;
    T.data[q].j=M.data[p].i;
    T.data[q].e=M.data[p].e;
    ++cpot[col];
    }//for p
    }//if
    return OK;
    } //FastTransposeSMatrix