回 帖 发 新 帖 刷新版面

主题:Argument list syntax error是什么错误,

void Toposort(adjlist GL,int n)
{//对用邻接表GL表示的有向图拓扑排序
 int i,j,k,top,m=0; //m用来统计拓扑序列中顶点数
 edgenode * p;
 int * d=new int[n]; 
 for(i=0;i<n;i++)  d[i]=0;
//利用数组d中对应元素统计出每个顶点入度
 for(i=0;i<n;i++) {
  p=GL[i];
  while(p!=NULL) {
   j=p->adjvex;
   d[j]++;  p=p->next; 
  }
 }
 top=-1; //初始化栈的栈顶指针top为-1
 for(i=0;i<n;i++) //建立初始化栈
   if(d[i]==0) {
     d[i]=top;
     top=i;
   }
  //每循环一次删除一个顶点
  while(top!=-1) {
    j=top; //j的值为一个入度为0的顶点序号
    top=d[top]; //删除栈顶元素
    cout<<j<<‘ ’; //输出一个顶点
    m++; //输出顶点个数加1
   //删除该顶点的所有出边
    p=GL[j]; //p指向vj邻接表第一个结点
    while(p!=NULL) {
      k=p->adjvex; //vk是vj的一个邻接点
      d[k]- -; //vk入度减1
      if(d[k]==0) { //入度为0元素入栈
        d[k]=top;
        top=k; 
      } 
      p=p->next; //p指向vj邻接表下一结点 
     } }
   cout<<endl;
   if(m<n) //当输出顶点数小于图中顶点数时,有回路
    cout<<“The network has a cycle!” <<endl;

错误指向第一行的GL

回复列表 (共2个回复)

沙发

adjlist是什么,你定义了吗?

板凳

我感谢你的提醒,但是我还是有点不太会改,请帮忙改下!

我来回复

您尚未登录,请登录后再回复。点此登录或注册