我覺得是不是一個for循環(huán)就可以找到最小邊了啊?
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;
}
2017-11-22
? ?不行的,你給minWeight初值是0,想象一下,如果所有權(quán)值都大于0的話,if(minWeight > edgeLst.get(i).getWeightValue())里面的東西都不會執(zhí)行哦。如果你要求最小值,你應(yīng)該給minWeight一個很大的值,當(dāng)然這也是不嚴(yán)謹(jǐn)?shù)模瑖?yán)謹(jǐn)?shù)淖龇ň褪窍窭蠋煂懙哪菢?/p>