为了账号安全,请及时绑定邮箱和手机立即绑定

已采纳回答 / 晴天cloude
广度优先遍历是一层一层的遍历,同层节点之间的输出顺序与矩阵的排列有关,也就是和一开始节点的输入顺序有关,但是同层节点的输出顺序并不是广度优先搜索的重点。当然要是非按照固定的一种顺序,在输入节点的代码上写个排序就行了。

已采纳回答 / qq_191_0
这个等式表明两个结点位于同一集合里。这能够得到这两个结点可以通过其他结点相连的结论,所以如果A,B再直接相连便会形成闭环

已采纳回答 / 幕布斯9075980
void CMap::kruskalTree(){ int value = 0; int edgeCount = 0; vector<vector<int>> nodeSets; //之前一直显示vector subscript out of range,这是因为后面出现对vector直接取vec[]的语句,这是不对的 //因为vector没有分配空间,我在这里分配空间后就可以了。 nodeSets.resize(m_iCapacity*m_iCapacity); vector&l...

已采纳回答 / 风忆梦
每个函数结束时,会使用模板vector的析构函数自动释放内存

已采纳回答 / xk今天要改名了
你这个假设就是b只和a相连,对b来说确实结束了,但是和a相连的别的节点没有结束啊,会继续遍历。

已采纳回答 / SiO
从报错信息上看是容器下标越界的意思就是说你容器的区间传入了错误的值或大或小。随后检查了代码在75行处nodeSets[nodeBInSetLabel].push_back(nodeBIndex);下标处应该是nodeAInSetLabel 修改看看可否解决问题。

已采纳回答 / 慕娘9255957
应该是要有的,因为声明的节点是存放在开辟出的有固定容量的数组中,所以在添加节点时是需要判断节点数组是否已满。而实际实现,可以将m_iNodeCount与m_iCapacity进行比较,如果相等就return false。

已采纳回答 / Object_is_null
给Edge构造函数中的参数提供默认值,比如=0,就可以成为默认构造函数了

已采纳回答 / 一束会飞的光
因为接下来我们要在创造边的时候,需要传入上一顶点索引和下一顶点索引还有权值,如果只用初始值是不能说明这条边的作用,所以需要用这些赋值语句。

已采纳回答 / 白帽子培钧
<...code...>你这行代码写错了。。。不是preVec[i],而是j

已采纳回答 / 慕姐3585284
标记的是“边”,而不是“顶点”。每一次选出最小边,然后要把最小边标记为已选择,下一次就会选择没有选过的边的最小边。其实这一句可以省略的,因为在getMinEdge中,已经把选择出来的最小边标记过了。
首页上一页12下一页尾页
课程须知
本课程是数据结构初级课程 1、熟练掌握C++语言基础语法
老师告诉你能学到什么?
1、图的基本概念 2、图的存储方式 3、图的遍历算法 4、图的最小生成树算法 5、图的实际应用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消