集合的合并问题

来源:4-6 图的编码实战-最小生成树之克鲁斯卡尔算法(二)

我不要我不要

2018-12-17 14:39

else if (nodeAInSetLabel != -1 && nodeBInSetLabel != -1 && nodeAInSetLabel != nodeBInSetLabel)    //AB都在集合中,但不属于同一集合
  {
   if (nodeAInSetLabel > nodeBInSetLabel)
   {
    int temp = nodeAInSetLabel;
    nodeAInSetLabel = nodeBInSetLabel;
    nodeBInSetLabel = temp;
   }
   mergeNodeSet(nodeSets[nodeAInSetLabel], nodeSets[nodeBInSetLabel]);   //将B集合合并到A集合中
   for (int k = nodeBInSetLabel; k < (int)nodeSets.size() - 1; k++)      //销毁B集合
   {
    nodeSets[k] = nodeSets[k + 1];                                    //B集合后集合都向前移动一个位置
   }
  }

写回答 关注

1回答

  • 我不要我不要
    2018-12-17 14:39:49

    顶顶顶


数据结构探险之图篇

图是众多实际问题解决方案之源,从基础概念入手掌握图的处理

56337 学习 · 81 问题

查看课程

相似问题