为何提示:未报告的异常 java.lang.Exception;必须对其进行捕捉或声明以便抛出?????
class Dijkstra
{ static final int MaxWeight=32767;
public void dijkstra(MGraph g,int v0,int path[],int dist[],int s[])throws Exception
{
int mindis,i,j,u,n=g.getVexnum();u=0;
for(i=0;i<n;i++)
{ dist[i]=g.getEdges(v0,i);
s[i]=0;
if(i!=v0&&g.getEdges(v0,i)<MaxWeight)
path[i]=v0;
else
path[i]=-1;
}
s[v0]=1;
for(i=1;i<n;i++)
{ mindis=MaxWeight;
for(j=0;j<n;j++)
{if(s[j]==0&&dist[j]<mindis)
{ u = j;
mindis = dist[j];
}
}
if(mindis==MaxWeight) return;
s[u]=1;
for(j=0;j<n;j++)
{if(s[j]==0)
if(g.getEdges(u,j)<MaxWeight && dist[u]+g.getEdges(u, j)<dist[j])
{ dist[j]=dist[u]+g.getEdges(u,j);
path[j]=u;
}
}
}
}
}
主方法中的调用为:
Dijkstra dij=new Dijkstra();
dij.dijkstra(g,m,Path,distance,s);
编译时提示:未报告的异常 java.lang.Exception;必须对其进行捕捉或声明以便抛出
dij.dijkstra(g,m,Path,distance,s);
^