计算机软件技术基础3修改.pptVIP

  • 0
  • 0
  • 约4.52千字
  • 约 32页
  • 2018-07-04 发布于河南
  • 举报
计算机软件技术基础3修改

* 设稀疏矩阵A,B具有相同的行、列数,现要进行A+B运算。并将结果送回A矩阵中,算法步骤为 (1)从A,B矩阵的第1行第1个非零元素开始,分别由指针变量pa,pb指向。若B阵中该行无非零元素结点(即col(pb)=0),则将pa,pb指向下一行的开始。 (2)若B中有非零元素,则可能有下述三种情况: ①若col(pa)<col(pb),且col(pa)≠0,则将pa指向下一个非零结点。 ②若col(pa)>col(pb),或col(pa)=0,则在pa前插入pb指向的结点,并修改插入列的列指针。 ③若col(pa)=col(pb)则将B中的对应值加入A阵中,即val(pa)←val(pa)+val(pb)。 此时若val(pa)≠0,则指针pa,pb分别指向下一个非零元素结点;若val(pa)=0,则删除A中该结点。pa,pb分别指向下一个非零结点。 重复步骤(2),当B中本行无非零元素,然后转向下一行,直到所有行都进行完为止。 本算法整个运算过程是对A,B阵逐行扫描,其循环次数主要取决于A,B阵中的非零元素个数ta和tb,因此算法的时间复杂度为O(ta+tb)。 2.5 树与二叉树 树型结构是一类很重要的非线性数据结构,在这类结构中,元素结点之间存

文档评论(0)

1亿VIP精品文档

相关文档