请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

edgeTo不用指针可以吗

定义的时候写成vector<Edge> edgeTo;
最后用的时候写成mst.push_back(edgeTo[v]);而不用mst.push_back(*edgeTo[v]);这样可以吗

正在回答

1回答

可以的。


可能会稍微影响一些效率,因为每次取出Edge的时候,都会将整这个Edge复制一次,相较而言,取出指针,只是复制一个地址。不过现代C++(C++11以后的版本)对此也有优化。整体在逻辑上,是没有问题的:)


继续加油!:)

1 回复 有任何疑惑可以回复我~
  • 提问者 宝慕林2471919 #1
    老师回复这个问题的时候是半夜两点多啊。。。。辛苦了
    回复 有任何疑惑可以回复我~ 2019-04-19 08:43:44
  • 我也理解了 感谢老师!
    回复 有任何疑惑可以回复我~ 2021-10-07 14:09:41
  • 我理解了,因为&a取出的是地址,这里使用它没有意义。*EdgeTo[V]取出的是指针EdgeTo指向的值
    回复 有任何疑惑可以回复我~ 2021-10-07 14:22:47
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信