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

我觉得是不是一个for循环就可以找到最小边了啊?

private int getMinEdge(List<Edge> edgeLst) {

int minWeight = 0;

int edgeIndex = -1; 

int i = 0; 

for (; i < edgeLst.size(); i++) {

if(!edgeLst.get(i).isSelected())

{

if(minWeight > edgeLst.get(i).getWeightValue())

{

minWeight = edgeLst.get(i).getWeightValue();

edgeIndex = i;

}

}

}

return edgeIndex;

}



正在回答

代码语言

1 回答

   不行的,你给minWeight初值是0,想象一下,如果所有权值都大于0的话,if(minWeight > edgeLst.get(i).getWeightValue())里面的东西都不会执行哦。如果你要求最小值,你应该给minWeight一个很大的值,当然这也是不严谨的,严谨的做法就是像老师写的那样

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

我觉得是不是一个for循环就可以找到最小边了啊?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号